mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 20:29:32 +02:00
* Fixed image support
git-svn-id: trunk@11160 -
This commit is contained in:
parent
6a993fc079
commit
c9eba19930
@ -106,7 +106,8 @@ resourcestring
|
||||
SHTMLUsageCharset = 'Set the HTML character set';
|
||||
SHTMLHtmlSearch = 'Add search page with given name to the menu bar';
|
||||
SHTMLIndexColcount = 'Use N columns in the identifier index pages';
|
||||
|
||||
SHTMLImageUrl = 'Prefix image URLs with url';
|
||||
|
||||
// CHM usage
|
||||
SCHMUsageTOC = 'Use [File] as the table of contents. Usually a .hhc file.';
|
||||
SCHMUsageIndex = 'Use [File] as the index. Usually a .hhk file.';
|
||||
|
@ -142,7 +142,7 @@ type
|
||||
procedure DescrEndItalic; override;
|
||||
procedure DescrBeginEmph; override;
|
||||
procedure DescrEndEmph; override;
|
||||
procedure DescrWriteImageEl(const AFileName, ACaption : DOMString); override;
|
||||
procedure DescrWriteImageEl(const AFileName, ACaption, ALinkName : DOMString); override;
|
||||
procedure DescrWriteFileEl(const AText: DOMString); override;
|
||||
procedure DescrWriteKeywordEl(const AText: DOMString); override;
|
||||
procedure DescrWriteVarEl(const AText: DOMString); override;
|
||||
@ -962,10 +962,10 @@ begin
|
||||
PopOutputNode;
|
||||
end;
|
||||
|
||||
procedure THTMLWriter.DescrWriteImageEl(const AFileName, ACaption : DOMString);
|
||||
procedure THTMLWriter.DescrWriteImageEl(const AFileName, ACaption, ALinkName : DOMString);
|
||||
|
||||
Var
|
||||
Pel,Cel : TDOMNode;
|
||||
Pel,Cel,Lel : TDOMNode;
|
||||
El :TDomElement;
|
||||
D : String;
|
||||
L : Integer;
|
||||
@ -978,7 +978,10 @@ begin
|
||||
begin
|
||||
Cel:=CreateTable(CurOutputNode);
|
||||
Pel:=CreateTD(CreateTR(Cel));
|
||||
AppendText(CreateTD(CreateTR(Cel)),ACaption);
|
||||
Cel:=CreateTD(CreateTR(Cel));
|
||||
If (ALinkName<>'') then
|
||||
Cel:=CreateAnchor(Cel,ALinkName);
|
||||
AppendText(Cel,ACaption);
|
||||
end;
|
||||
// Determine URL for image.
|
||||
D:=BaseImageURL;
|
||||
@ -2279,7 +2282,8 @@ Var
|
||||
I : Integer;
|
||||
M : TPasModule;
|
||||
E : TPasElement;
|
||||
|
||||
S : String;
|
||||
|
||||
begin
|
||||
L:=TStringList.Create;
|
||||
try
|
||||
@ -2291,7 +2295,10 @@ begin
|
||||
AddModuleIdentifiers(M,L);
|
||||
end;
|
||||
AppendMenuBar(IndexSubIndex);
|
||||
AppendTitle(Format(SDocPackageIndex, [Copy(Package.Name, 2, 256)]));
|
||||
S:=Package.Name;
|
||||
If Length(S)>0 then
|
||||
Delete(S,1,1);
|
||||
AppendTitle(Format(SDocPackageIndex, [S]));
|
||||
CreateIndexPage(L);
|
||||
Finally
|
||||
L.Free;
|
||||
@ -3250,6 +3257,8 @@ begin
|
||||
CharSet := Arg
|
||||
else if Cmd = '--index-colcount' then
|
||||
IndexColCount := StrToIntDef(Arg,IndexColCount)
|
||||
else if Cmd = '--image-url' then
|
||||
FBaseImageURL := Arg
|
||||
else if Cmd = '--footer-date' then
|
||||
begin
|
||||
FIDF:=True;
|
||||
@ -3277,6 +3286,8 @@ begin
|
||||
List.Add(SHTMLHtmlSearch);
|
||||
List.Add('--index-colcount=N');
|
||||
List.Add(SHTMLIndexColcount);
|
||||
List.Add('--image-url=url');
|
||||
List.Add(SHTMLImageUrl);
|
||||
end;
|
||||
|
||||
// private methods
|
||||
|
@ -38,6 +38,7 @@ Type
|
||||
TLaTeXWriter = class(TLinearWriter)
|
||||
protected
|
||||
FLink: String;
|
||||
FImageDir: String;
|
||||
FTableCount : Integer;
|
||||
FInVerbatim : Boolean;
|
||||
Inlist,
|
||||
@ -85,6 +86,7 @@ Type
|
||||
procedure DescrEndItalic; override;
|
||||
procedure DescrBeginEmph; override;
|
||||
procedure DescrEndEmph; override;
|
||||
procedure DescrWriteImageEl(const AFileName, ACaption, ALinkName : DOMString); override;
|
||||
procedure DescrWriteFileEl(const AText: DOMString); override;
|
||||
procedure DescrWriteKeywordEl(const AText: DOMString); override;
|
||||
procedure DescrWriteVarEl(const AText: DOMString); override;
|
||||
@ -125,6 +127,7 @@ Type
|
||||
procedure DescrEndTableCell; override;
|
||||
// TFPDocWriter class methods
|
||||
Function InterPretOption(Const Cmd,Arg : String) : boolean; override;
|
||||
Property ImageDir : String Read FImageDir Write FImageDir;
|
||||
end;
|
||||
|
||||
|
||||
@ -215,6 +218,29 @@ begin
|
||||
Write('}');
|
||||
end;
|
||||
|
||||
procedure TLaTeXWriter.DescrWriteImageEl(const AFileName, ACaption, ALinkName : DOMString);
|
||||
|
||||
Var
|
||||
FN : String;
|
||||
L : Integer;
|
||||
|
||||
begin
|
||||
Writeln('\begin{figure}[ht]%');
|
||||
Writeln('\begin{center}');
|
||||
If (ACaption<>ACaption) then
|
||||
Writeln(Format('\caption{%s}',[EscapeText(ACaption)]));
|
||||
If (ALinkName<>'') then
|
||||
WriteLabel('fig:'+ALinkName);
|
||||
FN:=ImageDir;
|
||||
L:=Length(FN);
|
||||
If (L>0) and (FN[l]<>'/') then
|
||||
FN:=FN+'/';
|
||||
FN:=FN+AFileName;
|
||||
Writeln('\epsfig{file='+FN+'}');
|
||||
Writeln('\end{center}');
|
||||
Writeln('\end{figure}');
|
||||
end;
|
||||
|
||||
procedure TLaTeXWriter.DescrWriteFileEl(const AText: DOMString);
|
||||
begin
|
||||
Write('\file{');
|
||||
@ -675,6 +701,8 @@ begin
|
||||
LatexHighLight:=True
|
||||
else if Cmd = '--latex-extension' then
|
||||
TexExtension:=Arg
|
||||
else if Cmd = '--image-dir' then
|
||||
ImageDir:=Arg
|
||||
else
|
||||
Result:=False;
|
||||
end;
|
||||
|
@ -105,7 +105,7 @@ type
|
||||
procedure DescrEndItalic; virtual; abstract;
|
||||
procedure DescrBeginEmph; virtual; abstract;
|
||||
procedure DescrEndEmph; virtual; abstract;
|
||||
procedure DescrWriteImageEl(const AFileName, ACaption : DOMString); virtual; abstract;
|
||||
procedure DescrWriteImageEl(const AFileName, ACaption,ALinkName : DOMString); virtual; abstract;
|
||||
procedure DescrWriteFileEl(const AText: DOMString); virtual; abstract;
|
||||
procedure DescrWriteKeywordEl(const AText: DOMString); virtual; abstract;
|
||||
procedure DescrWriteVarEl(const AText: DOMString); virtual; abstract;
|
||||
@ -977,7 +977,10 @@ begin
|
||||
Result := True;
|
||||
end else if Node.NodeName = 'img' then
|
||||
begin
|
||||
begin
|
||||
ConvertImage(Node as TDomElement);
|
||||
Result:=True;
|
||||
end;
|
||||
end else
|
||||
Result := False;
|
||||
end;
|
||||
@ -985,13 +988,14 @@ end;
|
||||
Procedure TFPDocWriter.ConvertImage(El : TDomElement);
|
||||
|
||||
Var
|
||||
FN,Cap : DOMString;
|
||||
FN,Cap,LinkName : DOMString;
|
||||
|
||||
begin
|
||||
FN:=El['file'];
|
||||
Cap:=El['caption'];
|
||||
ChangeFileExt(FN,ImageExtension);
|
||||
DescrWriteImageEl(FN,Cap);
|
||||
LinkName:=El['name'];
|
||||
FN:=ChangeFileExt(FN,ImageExtension);
|
||||
DescrWriteImageEl(FN,Cap,LinkName);
|
||||
end;
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user