浏览代码

* Dotted filenames for package fcl-pdf

Michael VAN CANNEYT 2 年之前
父节点
当前提交
3b6fce6599

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Commands.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Commands;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fppdfcommands.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Consts.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Consts;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fppdfconsts.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.FontTextMapping.pp

@@ -0,0 +1,3 @@
+unit FpPdf.FontTextMapping;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpfonttextmapping.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Objects.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Objects;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fppdfobjects.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Parser.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Parser;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fppdfparser.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Pdf.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Pdf;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fppdf.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Predict.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Predict;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fppdfpredict.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Scanner.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Scanner;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fppdfscanner.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Source.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Source;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fppdfsource.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Ttf.Encodings.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Ttf.Encodings;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpttfencodings.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Ttf.Parser.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Ttf.Parser;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpparsettf.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Ttf.Subsetter.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Ttf.Subsetter;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpttfsubsetter.pp}

+ 3 - 0
packages/fcl-pdf/namespaced/FpPdf.Ttf.pp

@@ -0,0 +1,3 @@
+unit FpPdf.Ttf;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpttf.pp}

+ 15 - 0
packages/fcl-pdf/namespaces.lst

@@ -0,0 +1,15 @@
+src/fppdfpredict.pp=namespaced/FpPdf.Predict.pp
+{s*:src/}=namespaced/
+{i+:src/}
+src/fppdfparser.pp=namespaced/FpPdf.Parser.pp
+src/fppdfobjects.pp=namespaced/FpPdf.Objects.pp
+src/fppdfscanner.pp=namespaced/FpPdf.Scanner.pp
+src/fpfonttextmapping.pp=namespaced/FpPdf.FontTextMapping.pp
+src/fpttfsubsetter.pp=namespaced/FpPdf.Ttf.Subsetter.pp
+src/fppdfconsts.pp=namespaced/FpPdf.Consts.pp
+src/fppdf.pp=namespaced/FpPdf.Pdf.pp
+src/fpttfencodings.pp=namespaced/FpPdf.Ttf.Encodings.pp
+src/fpttf.pp=namespaced/FpPdf.Ttf.pp
+src/fpparsettf.pp=namespaced/FpPdf.Ttf.Parser.pp
+src/fppdfsource.pp=namespaced/FpPdf.Source.pp
+src/fppdfcommands.pp=namespaced/FpPdf.Commands.pp

+ 9 - 0
packages/fcl-pdf/src/fpfonttextmapping.pp

@@ -14,16 +14,25 @@
 
 
  **********************************************************************}
  **********************************************************************}
 
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit FPFontTextMapping;
 unit FPFontTextMapping;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode objfpc}{$H+}
 {$mode objfpc}{$H+}
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes,
+  System.SysUtils,
+  System.Contnrs;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   Classes,
   Classes,
   SysUtils,
   SysUtils,
   contnrs;
   contnrs;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 type
 type
 
 

+ 9 - 0
packages/fcl-pdf/src/fpparsettf.pp

@@ -12,7 +12,9 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
 
  **********************************************************************}
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpparsettf;
 unit fpparsettf;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode objfpc}
 {$mode objfpc}
 {$h+}
 {$h+}
@@ -22,10 +24,17 @@ unit fpparsettf;
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes,
+  System.SysUtils,
+  FpPdf.Ttf.Encodings;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   Classes,
   Classes,
   SysUtils,
   SysUtils,
   fpttfencodings;
   fpttfencodings;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 type
 type
   ETTF = Class(Exception);
   ETTF = Class(Exception);

+ 23 - 0
packages/fcl-pdf/src/fppdf.pp

@@ -20,7 +20,9 @@
        If you do localise anything, make sure you know what you are doing.
        If you do localise anything, make sure you know what you are doing.
 
 
  **********************************************************************}
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpPDF;
 unit fpPDF;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode objfpc}{$H+}
 {$mode objfpc}{$H+}
 
 
@@ -29,6 +31,19 @@ unit fpPDF;
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes,
+  System.SysUtils,
+  System.StrUtils,
+  System.Contnrs,
+  FpImage,
+  FpImage.Reader.JPEG, FpImage.Reader.PNG, FpImage.Reader.Bitmap, // these are required for auto image-handler functionality
+  System.ZLib.Zstream,
+  FpPdf.Ttf.Parser,
+  FpPdf.Ttf.Subsetter,
+  FpPdf.FontTextMapping;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   Classes,
   Classes,
   SysUtils,
   SysUtils,
@@ -40,6 +55,7 @@ uses
   fpparsettf,
   fpparsettf,
   fpTTFSubsetter,
   fpTTFSubsetter,
   FPFontTextMapping;
   FPFontTextMapping;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 Const
 Const
   { Some popular predefined colors. Channel format is: RRGGBB }
   { Some popular predefined colors. Channel format is: RRGGBB }
@@ -1258,10 +1274,17 @@ Operator = (a,b : TPDFPaper) z : boolean;
 
 
 implementation
 implementation
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Math,
+  System.Hash.Md5,
+  FpPdf.Ttf;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   math,
   math,
   md5,
   md5,
   fpttf;
   fpttf;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 
 
 resourcestring
 resourcestring

+ 6 - 0
packages/fcl-pdf/src/fppdfcommands.pp

@@ -1,11 +1,17 @@
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fppdfcommands;
 unit fppdfcommands;
+{$ENDIF}
 
 
 {$mode ObjFPC}{$H+}
 {$mode ObjFPC}{$H+}
 
 
 interface
 interface
 
 
 uses
 uses
+{$IFDEF FPC_DOTTEDUNITS}
+  System.Classes, System.SysUtils, FpPdf.Consts, System.Types, FpPdf.Objects;
+{$ELSE}
   Classes, SysUtils, fppdfconsts, types, fppdfobjects;
   Classes, SysUtils, fppdfconsts, types, fppdfobjects;
+{$ENDIF}
 
 
 Type
 Type
 
 

+ 16 - 0
packages/fcl-pdf/src/fppdfconsts.pp

@@ -1,4 +1,20 @@
+{ **********************************************************************
+  This file is part of the Free Component Library
+
+  PDF names/constants.
+  Copyright (c) 2022 by Michael Van Canneyt [email protected]
+
+  See the file COPYING.FPC, included in this distribution,
+  for details about the copyright.
+
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fppdfconsts;
 unit fppdfconsts;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode ObjFPC}{$H+}
 {$mode ObjFPC}{$H+}
 
 

+ 7 - 3
packages/fcl-pdf/src/fppdfobjects.pp

@@ -14,7 +14,9 @@
 
 
   **********************************************************************}
   **********************************************************************}
 
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fppdfobjects;
 unit fppdfobjects;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode ObjFPC}{$H+}
 {$mode ObjFPC}{$H+}
 {$modeswitch advancedrecords}
 {$modeswitch advancedrecords}
@@ -25,9 +27,11 @@ unit fppdfobjects;
 interface
 interface
 
 
 uses
 uses
-  TypInfo,
-  Types,
-  rtlConsts, SysUtils, Classes, Contnrs, fppdfconsts;
+{$IFDEF FPC_DOTTEDUNITS}
+  System.TypInfo, System.Types, System.RtlConsts, System.SysUtils, System.Classes, System.Contnrs, FpPdf.Consts;
+{$ELSE FPC_DOTTEDUNITS}
+  TypInfo, Types, rtlConsts, SysUtils, Classes, Contnrs, fppdfconsts;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 Const
 Const
   PDFTextArraySpaceTreshold = 200;
   PDFTextArraySpaceTreshold = 200;

+ 10 - 0
packages/fcl-pdf/src/fppdfparser.pp

@@ -13,7 +13,9 @@
 
 
   **********************************************************************}
   **********************************************************************}
 
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fppdfparser;
 unit fppdfparser;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode ObjFPC}{$H+}
 {$mode ObjFPC}{$H+}
 {$J-}
 {$J-}
@@ -25,7 +27,11 @@ unit fppdfparser;
 interface
 interface
 
 
 uses
 uses
+{$IFDEF FPC_DOTTEDUNITS}
+  System.Types, System.TypInfo, System.Classes, System.SysUtils, FpPdf.Objects, FpPdf.Scanner, FpPdf.Source, Fcl.Streams.Extra, FpPdf.Predict, FpPdf.Commands;
+{$ELSE FPC_DOTTEDUNITS}
   Types, Typinfo, Classes, SysUtils, fppdfobjects, fppdfscanner, fppdfsource, streamex, fppdfpredict, fppdfcommands;
   Types, Typinfo, Classes, SysUtils, fppdfobjects, fppdfscanner, fppdfsource, streamex, fppdfpredict, fppdfcommands;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 Const
 Const
   PDFMaxTrailerDistance = 6;  // Maximum number of bytes to scan backwards for trailer dictionary end: >>
   PDFMaxTrailerDistance = 6;  // Maximum number of bytes to scan backwards for trailer dictionary end: >>
@@ -244,7 +250,11 @@ Const
 
 
 implementation
 implementation
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses System.StrUtils, System.ZLib.Zstream, System.Hash.Ascii85, Fcl.Streams.Chained, Fcl.Streams.LZW, FpPdf.Consts;
+{$ELSE FPC_DOTTEDUNITS}
 uses strutils, zstream, ascii85, chainstream, lzwstream, fppdfconsts;
 uses strutils, zstream, ascii85, chainstream, lzwstream, fppdfconsts;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 resourcestring
 resourcestring
   SErrNoStartXRef = 'No startxref found, starting at position %d';
   SErrNoStartXRef = 'No startxref found, starting at position %d';

+ 7 - 0
packages/fcl-pdf/src/fppdfpredict.pp

@@ -13,14 +13,21 @@
 
 
   **********************************************************************}
   **********************************************************************}
 
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fppdfpredict;
 unit fppdfpredict;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode ObjFPC}{$H+}
 {$mode ObjFPC}{$H+}
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils, FpImage.Reader.PNG  ;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   Classes, SysUtils, fpreadpng  ;
   Classes, SysUtils, fpreadpng  ;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 Type
 Type
   EPDFPredict = Class(Exception);
   EPDFPredict = Class(Exception);

+ 7 - 0
packages/fcl-pdf/src/fppdfscanner.pp

@@ -12,14 +12,21 @@
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
 
   **********************************************************************}
   **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fppdfscanner;
 unit fppdfscanner;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode ObjFPC}{$H+}
 {$mode ObjFPC}{$H+}
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils, FpPdf.Objects, FpPdf.Source;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   Classes, SysUtils, fppdfobjects, fppdfsource;
   Classes, SysUtils, fppdfobjects, fppdfsource;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 Const
 Const
   PDFStringLengthDelta = 100;
   PDFStringLengthDelta = 100;

+ 7 - 0
packages/fcl-pdf/src/fppdfsource.pp

@@ -18,14 +18,21 @@
   we implement this here.
   we implement this here.
 }
 }
 
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fppdfsource;
 unit fppdfsource;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode ObjFPC}{$H+}
 {$mode ObjFPC}{$H+}
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   Classes, SysUtils;
   Classes, SysUtils;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 Const
 Const
   PDFDefaultBufferSize  = 4 * 1024; // 4K buffer
   PDFDefaultBufferSize  = 4 * 1024; // 4K buffer

+ 25 - 3
packages/fcl-pdf/src/fpttf.pp

@@ -17,7 +17,9 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
 
  **********************************************************************}
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpTTF;
 unit fpTTF;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode objfpc}{$H+}
 {$mode objfpc}{$H+}
 
 
@@ -25,11 +27,19 @@ unit fpTTF;
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes,
+  System.SysUtils,
+  System.Contnrs,
+  FpPdf.Ttf.Parser;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   Classes,
   Classes,
   SysUtils,
   SysUtils,
   contnrs,
   contnrs,
   fpparsettf;
   fpparsettf;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 type
 type
 
 
@@ -136,6 +146,17 @@ function gTTFontCache: TFPFontCacheList;
 
 
 implementation
 implementation
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  Xml.Dom
+  ,Xml.Read
+  {$ifdef mswindows}
+  ,WinApi.Windows  // for SHGetFolderPath API call used by gTTFontCache.ReadStandardFonts() method
+  ,WinApi.Shlobj
+  ,WinApi.Activex
+  {$endif}
+  ;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   DOM
   DOM
   ,XMLRead
   ,XMLRead
@@ -144,6 +165,7 @@ uses
   Shlobj,activex
   Shlobj,activex
   {$endif}
   {$endif}
   ;
   ;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 resourcestring
 resourcestring
   rsNoSearchPathDefined = 'No search path was defined';
   rsNoSearchPathDefined = 'No search path was defined';
@@ -380,7 +402,7 @@ var
   lFont: TFPFontCacheItem;
   lFont: TFPFontCacheItem;
   s: String;
   s: String;
 begin
 begin
-  if SysUtils.FindFirst(AFontPath + AllFilesMask, faAnyFile, sr) = 0 then
+  if {$IFDEF FPC_DOTTEDUNITS}System.{$ENDIF}SysUtils.FindFirst(AFontPath + AllFilesMask, faAnyFile, sr) = 0 then
   begin
   begin
     repeat
     repeat
       // check if special files to skip
       // check if special files to skip
@@ -404,9 +426,9 @@ begin
           end;
           end;
         end;
         end;
       end;
       end;
-    until SysUtils.FindNext(sr) <> 0;
+    until {$IFDEF FPC_DOTTEDUNITS}System.{$ENDIF}SysUtils.FindNext(sr) <> 0;
   end;
   end;
-  SysUtils.FindClose(sr);
+  {$IFDEF FPC_DOTTEDUNITS}System.{$ENDIF}SysUtils.FindClose(sr);
 end;
 end;
 
 
 procedure TFPFontCacheList.SetDPI(AValue: integer);
 procedure TFPFontCacheList.SetDPI(AValue: integer);

+ 7 - 0
packages/fcl-pdf/src/fpttfencodings.pp

@@ -13,14 +13,21 @@
 
 
  **********************************************************************}
  **********************************************************************}
 
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpttfencodings;
 unit fpttfencodings;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode objfpc}
 {$mode objfpc}
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.SysUtils;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   SysUtils;
   SysUtils;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 Type
 Type
   TTTFEncoding =
   TTTFEncoding =

+ 16 - 0
packages/fcl-pdf/src/fpttfsubsetter.pp

@@ -14,7 +14,9 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
 
  **********************************************************************}
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpTTFSubsetter;
 unit fpTTFSubsetter;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 {$mode objfpc}{$H+}
 {$mode objfpc}{$H+}
 
 
@@ -25,12 +27,21 @@ unit fpTTFSubsetter;
 
 
 interface
 interface
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes,
+  System.SysUtils,
+  System.Contnrs,
+  FpPdf.Ttf.Parser,
+  FpPdf.FontTextMapping;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   Classes,
   Classes,
   SysUtils,
   SysUtils,
   contnrs,
   contnrs,
   fpparsettf,
   fpparsettf,
   FPFontTextMapping;
   FPFontTextMapping;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 type
 type
   ETTFSubsetter = class(Exception);
   ETTFSubsetter = class(Exception);
@@ -155,8 +166,13 @@ type
 
 
 implementation
 implementation
 
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Math;
+{$ELSE FPC_DOTTEDUNITS}
 uses
 uses
   math;
   math;
+{$ENDIF FPC_DOTTEDUNITS}
 
 
 resourcestring
 resourcestring
   rsErrFontInfoNotAssigned = 'FontInfo was not assigned';
   rsErrFontInfoNotAssigned = 'FontInfo was not assigned';