⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pdfjpfonts.pas

📁 作者:Takeshi Kanno. PowerPdf是一款制作PDF文档的VCL控件。使用上和QuickReport类似。
💻 PAS
📖 第 1 页 / 共 3 页
字号:
{ TPdfMincyoItalic }

// AddDescriptorItem
procedure TPdfMincyoItalic.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC +
             PDF_FONT_FIXED_WIDTH +
             PDF_FONT_SERIF;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', -11);
    AddNumberItem('StemV', 78);
  end;
end;

// GetFontName
function TPdfMincyoItalic.GetFontName: string;
begin
  result := 'Mincyo,Italic';
end;

{ TPdfMincyoBoldItalic }

// AddDescriptorItem
procedure TPdfMincyoBoldItalic.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC +
             PDF_FONT_FIXED_WIDTH +
             PDF_FONT_SERIF +
             PDF_FONT_FOURCE_BOLD;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', -11);
    AddNumberItem('StemV', 156);
  end;
end;

// GetFontName
function TPdfMincyoBoldItalic.GetFontName: string;
begin
  result := 'Mincyo,BoldItalic';
end;

{ TPdfJpProportionalFont }

// Create
constructor TPdfJpProportionalFont.Create(AXref: TPdfXref; AName: string);
begin
  inherited Create(AXref, AName);
  AddStrElements(Data, TYPE0_JPP_FONT_STR_TABLE);
  SetCharToCMap(@CharToCMap_90MSP_RKSJ_H);
end;

{ TPdfPGothic }

// AddDescendantFontItem
procedure TPdfPGothic.AddDescendantFontItem(ADescendantFont: TPdfDictionary);
var
  FWidthsRoot: TPdfArray;
  FWidths: TPdfArray;
begin
  FWidthsRoot := TPdfArray.CreateArray(nil);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(1));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY1);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(326));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY2);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(633));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY3);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(771));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY4);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(780));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY5);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(790));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY6);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(816));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY7);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(842));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY8);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(925));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY9);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(988));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY10);
  FWidthsRoot.AddItem(FWidths);
  ADescendantFont.AddItem('W', FWidthsRoot);
end;

// AddDescriptorItem
procedure TPdfPGothic.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', 0);
    AddNumberItem('StemV', 78);
  end;
end;

// GetFontName
function TPdfPGothic.GetFontName: string;
begin
  result := 'PGothic'
end;

{ TPdfPGothicBold }

// AddDescriptorItem
procedure TPdfPGothicBold.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC + PDF_FONT_FOURCE_BOLD;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', 0);
    AddNumberItem('StemV', 156);
  end;
end;

// GetFontName
function TPdfPGothicBold.GetFontName: string;
begin
  result := 'PGothic,Bold'
end;

{ TPdfPGothicItalic }

// AddDescriptorItem
procedure TPdfPGothicItalic.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', -11);
    AddNumberItem('StemV', 78);
  end;
end;

// GetFontName
function TPdfPGothicItalic.GetFontName: string;
begin
  result := 'PGothic,Italic'
end;

{ TPdfPGothicBoldItalic }

// AddDescriptorItem
procedure TPdfPGothicBoldItalic.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC + PDF_FONT_FOURCE_BOLD;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', -11);
    AddNumberItem('StemV', 156);
  end;
end;

// GetFontName
function TPdfPGothicBoldItalic.GetFontName: string;
begin
  result := 'PGothic,BoldItalic'
end;

{ TPdfPMincyo }

// AddDescendantFontItem
procedure TPdfPMincyo.AddDescendantFontItem(ADescendantFont: TPdfDictionary);
var
  FWidthsRoot: TPdfArray;
  FWidths: TPdfArray;
begin
  FWidthsRoot := TPdfArray.CreateArray(nil);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(1));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY1);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(326));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY2);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(633));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY3);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(771));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY4);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(780));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY5);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(790));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY6);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(816));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY7);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(842));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY8);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(925));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY9);
  FWidthsRoot.AddItem(FWidths);
  FWidthsRoot.AddItem(TPdfNumber.CreateNumber(988));
  FWidths := TPdfArray.CreateNumArray(nil, PGOTHIC_FONT_WIDTH_ARRAY10);
  FWidthsRoot.AddItem(FWidths);
  ADescendantFont.AddItem('W', FWidthsRoot);
end;

// AddDescriptorItem
procedure TPdfPMincyo.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC + PDF_FONT_SERIF;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', 0);
    AddNumberItem('StemV', 78);
  end;
end;

// GetFontName
function TPdfPMincyo.GetFontName: string;
begin
  result := 'PMincyo'
end;

{ TPdfPMincyoBold }

// AddDescriptorItem
procedure TPdfPMincyoBold.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC + PDF_FONT_SERIF + PDF_FONT_FOURCE_BOLD;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', 0);
    AddNumberItem('StemV', 156);
  end;
end;

// GetFontName
function TPdfPMincyoBold.GetFontName: string;
begin
  result := 'PMincyo,Bold'
end;

{ TPdfPMincyoItalic }

// AddDescriptorItem
procedure TPdfPMincyoItalic.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC + PDF_FONT_SERIF;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', -11);
    AddNumberItem('StemV', 78);
  end;
end;

// GetFontName
function TPdfPMincyoItalic.GetFontName: string;
begin
  result := 'PMincyo,Italic'
end;

{ TPdfPMincyoBoldItalic }

// AddDescriptorItem
procedure TPdfPMincyoBoldItalic.AddDescriptorItem(AFontDescriptor: TPdfDictionary);
var
  Flags: integer;
begin
  with AFontDescriptor do
  begin
    Flags := PDF_FONT_SYMBOLIC + PDF_FONT_SERIF + PDF_FONT_FOURCE_BOLD;
    AddNumberItem('Flags', Flags);
    AddNumberItem('ItalicAngle', -11);
    AddNumberItem('StemV', 156);
  end;
end;

// GetFontName
function TPdfPMincyoBoldItalic.GetFontName: string;
begin
  result := 'PMincyo,BoldItalic'
end;

initialization

  RegisterClassAlias(TPdfGothic, 'Gothic');
  RegisterClassAlias(TPdfGothicBold, 'Gothic,Bold');
  RegisterClassAlias(TPdfGothicItalic, 'Gothic,Italic');
  RegisterClassAlias(TPdfGothicBoldItalic, 'Gothic,BoldItalic');
  RegisterClassAlias(TPdfMincyo, 'Mincyo');
  RegisterClassAlias(TPdfMincyoBold, 'Mincyo,Bold');
  RegisterClassAlias(TPdfMincyoItalic, 'Mincyo,Italic');
  RegisterClassAlias(TPdfMincyoBoldItalic, 'Mincyo,BoldItalic');
  RegisterClassAlias(TPdfPGothic, 'PGothic');
  RegisterClassAlias(TPdfPGothicBold, 'PGothic,Bold');
  RegisterClassAlias(TPdfPGothicItalic, 'PGothic,Italic');
  RegisterClassAlias(TPdfPGothicBoldItalic, 'PGothic,BoldItalic');
  RegisterClassAlias(TPdfPMincyo, 'PMincyo');
  RegisterClassAlias(TPdfPMincyoBold, 'PMincyo,Bold');
  RegisterClassAlias(TPdfPMincyoItalic, 'PMincyo,Italic');
  RegisterClassAlias(TPdfPMincyoBoldItalic, 'PMincyo,BoldItalic');

finalization

  UnRegisterClass(TPdfGothic);
  UnRegisterClass(TPdfGothicBold);
  UnRegisterClass(TPdfGothicItalic);
  UnRegisterClass(TPdfGothicBoldItalic);
  UnRegisterClass(TPdfMincyo);
  UnRegisterClass(TPdfMincyoBold);
  UnRegisterClass(TPdfMincyoItalic);
  UnRegisterClass(TPdfMincyoBoldItalic);
  UnRegisterClass(TPdfPGothic);
  UnRegisterClass(TPdfPGothicBold);
  UnRegisterClass(TPdfPGothicItalic);
  UnRegisterClass(TPdfPGothicBoldItalic);
  UnRegisterClass(TPdfPMincyo);
  UnRegisterClass(TPdfPMincyoBold);
  UnRegisterClass(TPdfPMincyoItalic);
  UnRegisterClass(TPdfPMincyoBoldItalic);

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -