Ejemplo n.º 1
0
        public override void WriteFontObject(TPdfStream DataStream, TXRefSection XRef)
        {
            XRef.SetObjectOffset(FontObjId, DataStream);
            TIndirectRecord.SaveHeader(DataStream, FontObjId);
            TDictionaryRecord.BeginDictionary(DataStream);
            TDictionaryRecord.SaveKey(DataStream, TPdfToken.TypeName, TPdfTokens.GetString(TPdfToken.FontName));
            TDictionaryRecord.SaveKey(DataStream, TPdfToken.SubtypeName, FontType());
            TDictionaryRecord.SaveKey(DataStream, TPdfToken.BaseFontName, GetFontName(Embed, Subset));
            TDictionaryRecord.SaveKey(DataStream, TPdfToken.EncodingName, EncodingType());
            long fc = FirstChar; if (fc < 0)

            {
                fc = 0;
            }

            TDictionaryRecord.SaveKey(DataStream, TPdfToken.FirstCharName, PdfConv.LongToString(fc));
            TDictionaryRecord.SaveKey(DataStream, TPdfToken.LastCharName, PdfConv.LongToString(LastChar));

            XRef.SetObjectOffset(FontDescriptorId, DataStream);
            TDictionaryRecord.SaveKey(DataStream, TPdfToken.FontDescriptorName, TIndirectRecord.GetCallObj(FontDescriptorId));

            SaveWidths(DataStream);

            TDictionaryRecord.EndDictionary(DataStream);
            TIndirectRecord.SaveTrailer(DataStream);

            SaveFontDescriptor(DataStream, FontDescriptorId, XRef, Embed, Subset);
        }
Ejemplo n.º 2
0
        public static string ToString(int[] Source, bool AddBrackets)
        {
            StringBuilder Result = new StringBuilder();

            if (AddBrackets)
            {
                Result.Append(TPdfTokens.GetString(TPdfToken.OpenArray));
            }
            for (int i = 0; i < Source.Length; i++)
            {
                Result.Append(PdfConv.LongToString(Source[i]));
                if (i < Source.Length - 1)
                {
                    Result.Append(" ");
                }
            }
            if (AddBrackets)
            {
                Result.Append(TPdfTokens.GetString(TPdfToken.CloseArray));
            }
            return(Result.ToString());
        }
Ejemplo n.º 3
0
 public static void SaveKey(TPdfStream DataStream, TPdfToken Tk, int Value)
 {
     SaveKey(DataStream, Tk, PdfConv.LongToString(Value));
 }