2013-01-18 153 views
4

在爲此文檔設置文本字體樣式爲Times New Roman時出現問題。我希望所有的測試都是新的羅馬字體大小10.我生成了一個字體表,它保存了我的文檔的類型和唯一類型。我希望所有的文本都是新的羅馬文字,但是每當文檔生成時它說它由於某種原因被損壞,但是如果我沒有設置字體樣式,則文檔作爲默認文檔出現在快遞文本中,並且不會損壞。爲RTF文檔設置字體樣式

{\fonttbl{\f1\froman\fprq0\fcharset0 Times New Roman;} 
\par 
Hi <#name#> 
\par\par 

Welcome to New York \par\par 

\b New iPad\'ae App Is Available \b0 \par 
These are all the exciting things you cna do during your stay. \par \par 
} 

回答

2

您在上面的示例中缺少很多格式。例如,從寫字板或其他應用程序(Word放入太多的元數據)保存一個非常簡單的RTF文件,並查看缺少的所有內容。

首先,Here is the most recent RTF Spec, 1.9.1。這將幫助你完成任何與RTF相關的工作。

其次,任何RTF文檔必須\rtf*N*其中Ñ開始是RTF版(目前1)。在你的例子中你錯過了這個。這是爲什麼它說文件已損壞的衆多原因之一。

第三,你在字體表中定義了一些東西,然後不使用定義f1This is an old spec for RTF, 1.6, but look at how the font table is defined.

還有很多其他的事情,但我認爲你使用的是RTF,就像你會使用HTML或者帶有標籤的東西一樣。我會閱讀規範以瞭解RTF的工作原理。這裏是一個非常小的RTF文件:

{\rtf1\ansi\ansicpg1252\uc1\htmautsp\deff2 
{\fonttbl{\f0\fcharset0 Times New Roman;}{\f2\fcharset0 Tahoma;}} 
{\colortbl\red0\green0\blue0;\red255\green255\blue255;} 
\loch\hich\dbch\pard\plain\ltrpar\itap0{\lang1033\fs16\f2\cf0 \cf0\ql 
{\f2 {\ltrch This is a test of RTF.}\li0\ri0\sa0\sb0\fi0\ql\par}}}