我对 Adobe Acrobat 还不熟悉。我使用的是 Adobe Acrobat Pro X。我基本上是从头开始创建一个可填写的表单。我想要做的是能够格式化只读文本框,使其显示以下内容:
尽管此文本为粗体,此文本不会加粗
以上是复选框或一系列填写文本框之前的一种标签。
我似乎找不到一种方法来按我想要的方式仅将文本的一部分变为粗体(或斜体)。我意识到我可以先构建这个单词,然后制作 PDF,但是,由于表单(及其可填写)控件的设计可能会发生变化,并且每次都必须重新设计控件似乎很麻烦。我还意识到我可以添加单独的文本框,选择-Bold
或-Oblique
字体类型,但这似乎也相当麻烦。
我愿意接受任何最有效的解决方案。如果在添加可填写字段后,有一种简单的方法可以从 Word 中进行设计更改。我也愿意接受。
答案1
Adobe LiveCycle Designer 中的制作表单和文本框 - 部分 Adobe Acrobat Pro X。
Designer 中 TextField 的 RichText 技巧
使用 Adobe LiveCycle Designer 中的 Tab Order 和 Hierarchy 窗口 (Shift+F11) 进行导航。
Adobe Acrobat Pro 11.1.10 中文版
文本字段属性 -> 选项 -> 自定义计算脚本 >
检查!允许富文本格式!!!
文本字段属性->计算->自定义计算脚本>编辑...
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;
谢谢!
B 计划... )))
Microsoft Word 2007 SP3 -> Acrobat X Pro 表格
创建简单表
选择表
将颜色边框更改为 Adobe 公司默认样式)。
按住 Ctrl 键和鼠标左键,将指针移到所需的奇数行上,从而选择它们。右键单击任何突出显示的字段后,转到并选择“边框和阴影...”
右对齐文本,按 Ctrl+R,或选择表格列后按面板中的按钮。
擦除单元格左边框
调用边框和阴影对话框
在填充单元格对话框中设置选项。
更改文本颜色工具 Microsoft Word 2007。
未设置禁用颜色(vbGrayText)且在宏中不起作用...并且我设置了深灰色))。
另存为 Pdf Microsoft Word 2007。我不使用 Adobe 插件。
Microsoft Word 2007 Pdf 分辨率质量。
Microsoft Word 2007 Pdf 选项字体。
在另存为 Microsoft Word 2007 对话框后自动打开 pdf。
创建或编辑表单对话框第一部分
创建或编辑表单对话框第二部分
查看 Adobe Acrobat Pro X 表单。
保存 Arcobat Pro X 表格。
在段落字段 3 中的文本片段......
计划 C...
Apache FOP 从 XML 创建 pdf 文件。命令行:
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 设计师
Adobe LiveCycle Designer 中的新表单
使用空白表格
设置方向
添加视图 XML
添加子表单、文本和表单字段
文本无法在 Acrobar X Pro 中编辑!
在 Adobe X 中编辑表单字段
文本模板 | XSLT.1 | HTML 模板 XML | XSLT.2 | WordML 模板 | WSH/powershell 脚本 | Adobe Pdf
待定:XSLT_1、XSLT_2 - 样式文本
文本模板 -
文本示例.txt:
Full Name:
Company:
Job Title:
e-mail:
Phone:
Descriptions:\While \this text is bold\, this text will not be bold
获取txtxml.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>
将 2007 Word SP3 中打开的文档保存为 PDF,powershell 脚本。
powershell .\word2pdf.ps1
word2pdf.ps1:
# word2pdf.ps1 STTR [email protected]
[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"
将 2007 Word SP3 中打开的文档保存为 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
答案2
我不知道 Acrobat,但大多数程序只允许文本框有一种整体字体。
您可以做的是将其绘制到其他地方(例如 word),截取屏幕截图,然后将其裁剪成看起来像禁用的文本框。这对您有用吗?