Создание формы и текстового поля в Adobe LiveCycle Designer - часть Adobe Acrobat Pro X.
Трюки с RichText для TextField в Designer
Для навигации используйте окна «Порядок вкладок» и «Иерархия» в Adobe LiveCycle Designer (Shift+F11).
Adobe Acrobat Pro X
Свойства текстового поля -> Параметры -> Пользовательский скрипт расчета>
Проверьте! Разрешить форматированный текст
Свойства текстового поля -> Вычислить-> Сценарий пользовательских вычислений> Изменить ...
var ObjectName = "Text1";
var JoinArrayStyle = new Array();
JoinArrayStyle[0] = new Object();
JoinArrayStyle[0].text = "While ";
JoinArrayStyle[0].textSize = 22;
JoinArrayStyle[0].textColor = color.red;
JoinArrayStyle[1] = new Object();
JoinArrayStyle[1].text = "this text is bold";
JoinArrayStyle[1].fontWeight = 900;
JoinArrayStyle[1].textSize = 24;
JoinArrayStyle[1].textColor = color.dkGray;
JoinArrayStyle[2] = new Object();
JoinArrayStyle[2].text = ", this text will not be bold.";
JoinArrayStyle[2].textSize = 22;
JoinArrayStyle[2].textColor = color.black;
this.getField(ObjectName).richValue = JoinArrayStyle;
Спасибо!
План б ... )))
Microsoft Word 2007 с пакетом обновления 3 (SP3) -> Acrobat X Pro Form
Создать простую таблицу
Выберите стол
Изменить цвет границы на Adobe Corp. стиль по умолчанию)).
Удерживая клавишу Ctrl и левую кнопку мыши, наведите курсор на нужную нечетную строку, поэтому выберите их. После любого выделенного поля правой кнопкой мыши, перейдите и выберите «Граница и заливка ...»
Выровняйте текст вправо, нажмите Ctrl+R или нажмите кнопку на панели после выбора столбца таблицы.
Сотрите левую границу ячейки
Диалоговое окно «Граница вызова» и «Затенение»
Установите опцию в диалоговом окне заполнения ячейки.
Изменить цвет текста инструментом Microsoft Word 2007.
Отключенный цвет (vbGrayText) не установлен и не работает в макросах ... и я установил темно-серый)).
Сохранить как PDF Microsoft Word 2007. Я не использую Adobe Add-on.
Качество Microsoft Word 2007 в формате PDF.
Microsoft Word 2007 Pdf параметры шрифта.
Автоматически открывать PDF после сохранения в диалоговом окне Microsoft Word 2007.
Создание или редактирование формы диалогового окна, часть I
Диалоговое окно создания или редактирования формы, часть II
Просмотреть форму Adobe Acrobat Pro X.
Сохранить Arcobat Pro X Form.
В параграфе поле 3 фрагмент текста ...
План C ...
Apache FOP создает PDF-файл из XML. Командная строка:
foo.cmd -xml xslfoRef.xml -xsl xml2pdf.xsl -pdf xslfoRef.pdf
Apache FOP создает метрики шрифта TrueType:
java -cp build/fop.jar;lib\xmlgraphics-commons-1.4.jar;lib\commons-io-1.3.1.jar;lib\commons-logging-1.0.4.jar;lib/serializer-2.7.0.jar org.apache.fop.fonts.apps.TTFReader -ttcname "Cambria" %windir%\Fonts\CAMBRIA.TTC Cambria2.xml
Apache FOP создать PDF включает шрифт Cambria:
fop.bat -c Cambria2.xml -xml xslfoRef.xml -xsl xml2pdf.xsl -pdf xslfoRef.pdf
Adobe LiveCycle Designer
Новая форма в Adobe LiveCycle Designer
Используйте форму Balnk
установить ориентацию
добавить представление XML
добавить подчиненную форму, текст и поле формы
Текст не редактируется в Acrobar X Pro!
Редактировать поле формы в Adobe X
Текстовый шаблон | XSLT.1 | HTML шаблон XML | XSLT.2 | Шаблон WordML | Скрипт WSH/powershell | Adobe Pdf
TBD: XSLT_1, XSLT_2 - стиль текста
Текстовый шаблон -
textempl.txt:
Full Name:
Company:
Job Title:
e-mail:
Phone:
Descriptions:\While \this text is bold\, this text will not be bold
getxtxml.xml:
<!DOCTYPE properties [<!ENTITY textempltxt SYSTEM "textempl.txt">]>
<body> &textempltxt;</body>
XML HTML шаблон -
HTeMpLate.xml:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="xstyle.xss"?>
<body>
<table>
<tr>
<td class="field-style">Full Name: </td>
<td class="adobe-style"></td>
</tr>
<tr>
<td class="field-style">Company: </td>
<td class="adobe-style"></td>
</tr>
<tr>
<td class="field-style">Job Title: </td>
<td class="adobe-style"></td>
</tr>
<tr>
<td class="field-style">e-mail: </td>
<td class="adobe-style"></td>
</tr>
<tr>
<td class="field-style">Phone: </td>
<td class="adobe-style"></td>
</tr>
<tr>
<td class="field-style"><i>Descriptions: </i></td>
<td class="description">
<font class="Red" color="FF0000">While </font>
<font class="dkGray" color="595959">this text is bold</font>
<font class="None" color="000000">, this text will not be bold</font>
</td>
</tr>
</table>
</body>
XML CSS файл,
xstyle.xss:
@charset "UTF-8"; /* for Chrome Old ver */
/* test @: FireFox 18.0.1, Safari 5.1.7,Opera 12.12, Chrome 23.- 24., Internet Explorer 8 */
/* Style Sheets with XML */
body { display: block; width: 800px; align=left; border-width:0px; float:top; margin: 0; padding: 0;
border: 0; outline: 0; vertical-align: baseline; background: transparent;}
table { display: table; width: 800px; align=right; float:top;
border-spacing:10px; /* FF18,Sf5,Op12,Ch24 eq IE8 margin-bottom: 10px; */
}
tr { display: table-row; width: 800px; float:top; margin-bottom:10px; }
td { display: table-cell; width: 400px; padding-left : 10px; padding-right: 10px; border-color: 1px solid #0070C0; text-align: right; float:top; }
td.field-style { display: table-cell; width: 400px; padding-left: 10px; padding-right: 10px; text-align : right; }
td.description { display: table-cell; width: 400px; padding-left: 10px; padding-right: 10px; text-align : left ; background-color: #FFFFE5;}
td.adobe-style { display: table-cell; width: 400px; padding-left: 10px; padding-right: 10px; text-align : left ; border: 1px solid #0070C0;}
font.Red { color: #FF0000; }
font.dkGray { color: #595959; font-weight: bold;}
font.None { color: #000000; }
/* CSS3 FF18,Sf5,Op12,Ch24 */
tr > td[class="field-style"] { display: table-cell; width: 400px; padding-left: 10px; padding-right: 10px; text-align: right; }
tr > td[class="adobe-style"] { display: table-cell; width: 400px; padding-left: 10px; padding-right: 10px; text-align: left; border: 1px solid #0070C0;}
tr > td[class="description"] { display: table-cell; width: 400px; padding-left: 10px; padding-right: 10px; text-align: left; background-color: #FFFFE5;}
td > font[class="Red" ] { color: #FF0000; }
td > font[class="dkGray"] { color: #595959; font-weight: bold;}
td > font[class="None" ] { color: #000000; }
Конвертировать HTeMpLate.xml - шаблон HTML в шаблон Word XML 2003/ WordML.
xml2wordml.cmd:
@echo off
msxsl.exe HTeMpLate.xml xml2wordml.xslt -o wordml2003.xml
xml2wordml.xslt:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml" xml:space="preserve">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" omit-xml-declaration="no"/>
<xsl:preserve-space elements="td"/>
<xsl:template match="/">
<xsl:processing-instruction name="mso-application"><xsl:text>progid="Word.Document"</xsl:text></xsl:processing-instruction>
<xsl:apply-templates />
</xsl:template>
<xsl:template match="body"><w:wordDocument xml:space="preserve" xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml">
<w:styles>
<w:style w:type="table" w:default="on" w:styleId="TableNormal">
<w:name w:val="Normal Table"></w:name>
</w:style>
</w:styles>
<w:body>
<xsl:apply-templates/>
<!-- Page layout -->
<w:sectPr><w:pgSz w:w="16838" w:h="11906" w:orient="landscape"></w:pgSz></w:sectPr>
</w:body>
</w:wordDocument>
</xsl:template>
<!-- Start Table -->
<xsl:template match="table">
<w:tbl>
<w:tblPr>
<w:tblW w:w="9570" w:type="dxa"></w:tblW>
<w:tblBorders>
<w:top w:val="nil" />
<w:left w:val="nil" />
<w:bottom w:val="nil" />
<w:right w:val="nil" />
</w:tblBorders>
</w:tblPr>
<xsl:apply-templates select="*[name()]"/>
</w:tbl>
</xsl:template>
<xsl:template match="thead | tbody | tfoot">
<!-- WordProcessingML no equivalent -->
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="tr">
<w:tr>
<xsl:apply-templates />
</w:tr>
<!-- Insert table row begin -->
<w:tr>
<w:tc>
<w:tcPr><w:tcW w:w="4785" w:type="dxa"/></w:tcPr>
<w:p></w:p>
</w:tc>
<w:tc>
<w:tcPr><w:tcW w:w="4785" w:type="dxa"/></w:tcPr>
<w:p></w:p>
</w:tc>
</w:tr>
</xsl:template>
<!-- Table Header rule begin -->
<xsl:template match="th">
<w:tc>
<w:tcPr><w:tcW w:w="0" w:type="auto"/></w:tcPr>
<w:p>
<w:pPr><w:jc w:val="center"/></w:pPr>
<w:r>
<w:rPr><w:b/></w:rPr>
<w:t><xsl:value-of select="."/></w:t>
</w:r>
</w:p>
</w:tc>
</xsl:template>
<!-- Color Cell field-style begin -->
<xsl:template match="//tr/td[@class='field-style']">
<w:tc>
<w:tcPr><w:tcW w:w="0" w:type="auto"/>
</w:tcPr>
<w:p>
<w:pPr><w:jc w:val="right" />
</w:pPr>
<w:r>
<w:t><xsl:value-of select="."/></w:t>
</w:r>
</w:p>
</w:tc>
</xsl:template>
<!-- Color Cell adobe-style begin -->
<xsl:template match="//tr/td[@class='adobe-style']">
<w:tc>
<w:tcPr><w:tcW w:w="0" w:type="auto"/>
<w:tcBorders>
<w:top w:val="single" w:sz="2" w:color="0070C0"/>
<w:left w:val="single" w:sz="2" w:color="0070C0"/>
<w:bottom w:val="single" w:sz="2" w:color="0070C0"/>
<w:right w:val="single" w:sz="2" w:color="0070C0"/>
</w:tcBorders>
</w:tcPr>
<w:p>
<w:pPr><w:jc w:val="left" />
</w:pPr>
<w:r>
<w:t><xsl:value-of select="."/></w:t>
</w:r>
</w:p>
</w:tc>
</xsl:template>
<!-- Color Cell description begin -->
<xsl:template match="//tr/td[@class='description']">
<w:tc>
<w:tcPr><w:shd w:val="clear" w:color="auto" w:fill="FFFFE5" />
<w:tcW w:w="4279" w:type="dxa" /></w:tcPr>
<w:p>
<xsl:for-each select="//tr/td[@class='description']/font">
<w:r>
<w:rPr><w:color w:val="$getColor" /> </w:rPr>
<w:t><xsl:value-of select="."/></w:t>
</w:r>
</xsl:for-each>
</w:p>
</w:tc>
</xsl:template>
<!-- Color Cell description end -->
</xsl:stylesheet>
Сохранение документов, открытых в Word Word 3, в формате PDF, сценарий powershell.
powershell .\word2pdf.ps1
word2pdf.ps1:
# word2pdf.ps1 STTR sttrus@mail.ru
[int]$wdFormatPDF = 17
$SaveAsFormat = [int]$wdFormatPDF
$SaveAsExt=".pdf"
$word = New-Object -ComObject word.application
$word.visible = $false
$SourceDir="C:\DocSourceDir"
$i =0
$Files = Get-ChildItem $SourceDir -recurse -include *.txt,*.doc,*.docx,*.rtf,*.xml
Foreach ($file in $Files) {
$doc = $word.documents.open($file.fullname)
$saveFile=$file.DirectoryName + '\' + $file.BaseName + $SaveAsExt
$doc.saveas($saveFile, $SaveAsFormat)
$doc.close()
$i++
}
$word.Quit()
$word = $null
[gc]::collect()
[gc]::WaitForPendingFinalizers()
write-host "Count : $i"
Сохранить документы, открытые в Word Word 3, в формате PDF, скрипт WSH:
cscript //Nologo doc2pdf.vbs wordml2003.xml
doc2pdf.vbs:
If WScript.Arguments.Count <1 then
Wscript.Echo "Ex.1: cscript //Nologo doc2pdf.vbs filename.ext"
Wscript.Echo "Ex.2: cscript //Nologo doc2pdf.vbs wordml2003.xml"
Wscript.Quit
End If
Dim strFilePath:strFilePath = WScript.Arguments.Item(0)
docx2pdf strFilePath
Sub docx2pdf(OpenFile)
Const wdFormatPDF = 17
Dim WordDocument, FileProperties, strOpenFileName, strSavePDF
Dim FSO:Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.FileExists(OpenFile) Then
Dim WordApplication:Set WordApplication = CreateObject("Word.Application")
WordApplication.Visible = False
Set FileProperties = FSO.GetFile(OpenFile)
strOpenFileName = FileProperties.Path
Else
WScript.Echo "File Open Error: file not exist!"
Exit Sub
End If
strSavePDF = FSO.BuildPath(FileProperties.ParentFolder, FSO.GetBaseName(FileProperties) & ".pdf")
WordApplication.Documents.Open strOpenFileName
Set WordDocument = WordApplication.ActiveDocument
WordDocument.SaveAs strSavePDF, wdFormatPDF
WordDocument.Close
WordApplication.Quit(False)
End Sub