检查!允许富文本格式!!!

检查!允许富文本格式!!!

我对 Adob​​e Acrobat 还不熟悉。我使用的是 Adob​​e Acrobat Pro X。我基本上是从头开始创建一个可填写的表单。我想要做的是能够格式化只读文本框,使其显示以下内容:

尽管此文本为粗体,此文本不会加粗

以上是复选框或一系列填写文本框之前的一种标签。

我似乎找不到一种方法来按我想要的方式仅将文本的一部分变为粗体(或斜体)。我意识到我可以先构建这个单词,然后制作 PDF,但是,由于表单(及其可填写)控件的设计可能会发生变化,并且每次都必须重新设计控件似乎很麻烦。我还意识到我可以添加单独的文本框,选择-Bold-Oblique字体类型,但这似乎也相当麻烦。

我愿意接受任何最有效的解决方案。如果在添加可填写字段后,有一种简单的方法可以从 Word 中进行设计更改。我也愿意接受。

答案1

Adobe LiveCycle Designer 中的制作表单和文本框 - 部分 Adob​​e Acrobat Pro X。

Designer 中 TextField 的 RichText 技巧

使用 Adob​​e 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;

属性文本字段

允许富文本格式!!!

计算表 Adob​​e Acrobat Javascript

Javascript 窗口

结果 ...

谢谢!

B 计划... )))

Microsoft Word 2007 SP3 -> Acrobat X Pro 表格

创建简单表

选择表 选择表

将颜色边框更改为 Adob​​e 公司默认样式)。 在此处输入图片描述

按住 Ctrl 键和鼠标左键,将指针移到所需的奇数行上,从而选择它们。右键单击任何突出显示的字段后,转到并选择“边框和阴影...” 擦除几行边框

右对齐文本,按 Ctrl+R,或选择表格列后按面板中的按钮。 右对齐文本

擦除单元格左边框 擦除单元格左边框

调用边框和阴影对话框 边框和阴影对话框

在填充单元格对话框中设置选项。 填充单元格对话框

更改文本颜色工具 Microsoft Word 2007。

未设置禁用颜色(vbGrayText)且在宏中不起作用...并且我设置了深灰色))。 更改文本颜色工具 Microsoft Word 2007

另存为 Pdf Microsoft Word 2007。我不使用 Adob​​e 插件。 另存为 PDF Microsoft Word 2007

Microsoft Word 2007 Pdf 分辨率质量。 Microsoft Word 2007 Pdf 分辨率质量

Microsoft Word 2007 Pdf 选项字体。

Pdf 字体保存选项

在另存为 Microsoft Word 2007 对话框后自动打开 pdf。

另存为 Microsoft Word 2007 对话框后自动打开 PDF

创建或编辑表单对话框第一部分

创建或编辑表单对话框第一部分

创建或编辑表单对话框第二部分

创建或编辑表单对话框第二部分

查看 Adob​​e Acrobat Pro X 表单。 查看 Adob​​e Acrobat Pro X 表单

保存 Arcobat Pro X 表格。 保存 Arcobat Pro X 表格

在段落字段 3 中的文本片段...... 查看 Adob​​e 文件

计划 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 中的新表单 Adobe LiveCycle Designer 中的新表单

使用空白表格 使用空白表格

设置方向 设置方向

添加视图 XML 添加视图 XML

添加子表单、文本和表单字段 添加子表单、文本和表单字段

文本无法在 Acrobar X Pro 中编辑! Acrobar X Pro 中无法编辑文本

在 Adob​​e X 中编辑表单字段 Adobe X 中的编辑字段

文本模板 | XSLT.1 | HTML 模板 XML | XSLT.2 | WordML 模板 | WSH/powershell 脚本 | Adob​​e 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),截取屏幕截图,然后将其裁剪成看起来像禁用的文本框。这对您有用吗?

相关内容