From fca20c8bec852d2ec856d7a68f644d9229acd4a2 Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Mon, 16 Jan 2023 22:57:28 +0000 Subject: [PATCH] lazbarcode: Add sample project QRCodeGenerator. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8688 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- .../examples/qrcodegenerator/fpwritegif.pas | 846 ++++++++++++++++++ .../examples/qrcodegenerator/main.lfm | 166 ++++ .../examples/qrcodegenerator/main.pas | 170 ++++ .../examples/qrcodegenerator/qrcodegen.ico | Bin 0 -> 65738 bytes .../examples/qrcodegenerator/qrcodegen.lpi | 87 ++ .../examples/qrcodegenerator/qrcodegen.lpr | 25 + .../examples/qrcodegenerator/qrcodegen.res | Bin 0 -> 67820 bytes 7 files changed, 1294 insertions(+) create mode 100644 components/lazbarcodes/examples/qrcodegenerator/fpwritegif.pas create mode 100644 components/lazbarcodes/examples/qrcodegenerator/main.lfm create mode 100644 components/lazbarcodes/examples/qrcodegenerator/main.pas create mode 100644 components/lazbarcodes/examples/qrcodegenerator/qrcodegen.ico create mode 100644 components/lazbarcodes/examples/qrcodegenerator/qrcodegen.lpi create mode 100644 components/lazbarcodes/examples/qrcodegenerator/qrcodegen.lpr create mode 100644 components/lazbarcodes/examples/qrcodegenerator/qrcodegen.res diff --git a/components/lazbarcodes/examples/qrcodegenerator/fpwritegif.pas b/components/lazbarcodes/examples/qrcodegenerator/fpwritegif.pas new file mode 100644 index 000000000..181791936 --- /dev/null +++ b/components/lazbarcodes/examples/qrcodegenerator/fpwritegif.pas @@ -0,0 +1,846 @@ +{ +Copyright (c) 2007-2023, Udo Schmal + +Permission to use, copy, modify, and/or distribute the software for any purpose +with or without fee is hereby granted, provided that the above copyright notice +and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. + +https://www.gocher.me/FPWriteGIF +} + +unit FPWriteGIF; + +{$mode objfpc}{$H+} + +interface + +uses + Classes, SysUtils, FPImage, FPReadGif; + +type TColor = -$7FFFFFFF - 1..$7FFFFFFF; + +const +// GIF record separators + kGifImageSeparator: byte = $2c; + kGifExtensionSeparator: byte = $21; + kGifTerminator: byte = $3b; + kGifLabelGraphic: byte = $f9; + kGifBlockTerminator: byte = $00; +// LZW encode table sizes + kGifCodeTableSize = 4096; +// Raw rgb value + clNone = TColor($1FFFFFFF); + AlphaOpaque = $FF; + AlphaTransparent = 0; + MaxArr = (MaxLongint div Sizeof(integer)) - 1; + +type + APixel8 = array[0..MaxArr] of Byte; + PAPixel8 = ^APixel8; + + TRGBQuadArray256 = array[0..256] of TFPCompactImgRGBA8BitValue; + TOpenColorTableArray = array of TColor; + TColorTableArray = array[0..$FF] of TColor; + + TOctreeNode = class; // Forward definition so TReducibleNodes can be declared + TReducibleNodes = array[0..7] of TOctreeNode; + TOctreeNode = class(TObject) + IsLeaf: Boolean; + PixelCount: Integer; + RedSum, GreenSum, BlueSum: Integer; + Next: TOctreeNode; + Child: TReducibleNodes; + constructor Create(const Level: Integer; var LeafCount: Integer; var ReducibleNodes: TReducibleNodes); + destructor Destroy; override; + end; + + TFPWriterGIF = class(TFPCustomImageWriter) + private + fHeader: TGifHeader; + fDescriptor: TGifImageDescriptor; // only one image supported + fGraphicsCtrlExt: TGifGraphicsControlExtension; + fTransparent: Boolean; + fBackground: TColor; + fPixels: PAPixel8; + fPixelList: PChar; // decoded pixel indices + fPixelCount: longint; // number of pixels + fColorTable: TColorTableArray; + fColorTableSize: integer; + + procedure SaveToStream(Destination: TStream); + protected + procedure InternalWrite(Stream: TStream; Img: TFPCustomImage); override; + public + constructor Create; override; + destructor Destroy; override; + end; + +implementation +{$REGION ' - TOctreeNode - '} +constructor TOctreeNode.Create(const Level: Integer; var LeafCount: Integer; var ReducibleNodes: TReducibleNodes); +var i: Integer; +begin + PixelCount := 0; + RedSum := 0; + GreenSum := 0; + BlueSum := 0; + for i := Low(Child) to High(Child) do + Child[i] := nil; + IsLeaf := (Level = 8); + if IsLeaf then + begin + Next := nil; + Inc(LeafCount); + end + else + begin + Next := ReducibleNodes[Level]; + ReducibleNodes[Level] := Self; + end +end; + +destructor TOctreeNode.Destroy; +var i: Integer; +begin + for i := Low(Child) to High(Child) do + Child[i].Free +end; +{$ENDREGION} + +{$REGION ' - TFPWriterGIF. - '} +constructor TFPWriterGIF.Create; +begin + inherited Create; +end; + +destructor TFPWriterGIF.Destroy; +begin + inherited Destroy; +end; + +// save the current GIF definition to a stream object +// at first, just write it to our memory stream fSOURCE +procedure TFPWriterGIF.SaveToStream(Destination: TStream); +var + LZWStream: TMemoryStream; // temp storage for LZW + LZWSize: integer; // LZW minimum code size + + // these LZW encode routines sqrunch a bitmap into a memory stream + procedure LZWEncode(); + var + rPrefix: array[0..kGifCodeTableSize-1] of integer; // string prefixes + rSuffix: array[0..kGifCodeTableSize-1] of integer; // string suffixes + rCodeStack: array[0..kGifCodeTableSize-1] of byte; // encoded pixels + rSP: integer; // pointer into CodeStack + rClearCode: integer; // reset decode params + rEndCode: integer; // last code in input stream + rCurSize: integer; // current code size + rBitString: integer; // steady stream of bits to be decoded + rBits: integer; // number of valid bits in BitString + rMaxVal: boolean; // max code value found? + rCurX: integer; // position of next pixel + rCurY: integer; // position of next pixel + rCurPass: integer; // pixel line pass 1..4 + rFirstSlot: integer; // for encoding an image + rNextSlot: integer; // for encoding + rCount: integer; // number of bytes read/written + rLast: integer; // last byte read in + rUnget: boolean; // read a new byte, or use zLast? + + procedure LZWReset; + var i: integer; + begin + for i := 0 to (kGifCodeTableSize - 1) do + begin + rPrefix[i] := 0; + rSuffix[i] := 0; + end; + rCurSize := LZWSize + 1; + rClearCode := (1 shl LZWSize); + rEndCode := rClearCode + 1; + rFirstSlot := (1 shl (rCurSize - 1)) + 2; + rNextSlot := rFirstSlot; + rMaxVal := false; + end; + + // save a code value on the code stack + procedure LZWSaveCode(Code: integer); + begin + rCodeStack[rSP] := Code; + inc(rSP); + end; + + // save the code in the output data stream + procedure LZWPutCode(code: integer); + var + n: integer; + b: byte; + begin + // write out finished bytes + // a literal "8" for 8 bits per byte + while (rBits >= 8) do + begin + b := (rBitString and $ff); + rBitString := (rBitString shr 8); + rBits := rBits - 8; + LZWStream.Write(b, 1); + end; + // make sure no junk bits left above the first byte + rBitString := (rBitString and $ff); + // and save out-going code + n := (code shl rBits); + rBitString := (rBitString or n); + rBits := rBits + rCurSize; + end; + + // get the next pixel from the bitmap, and return it as an index into the colormap + function LZWReadBitmap: integer; + var + n: integer; + j: longint; + p: PChar; + begin + if (rUnget) then + begin + n := rLast; + rUnget := false; + end + else + begin + inc(rCount); + j := (rCurY * fDescriptor.Width) + rCurX; + if ((0 <= j) and (j < fPixelCount)) then + begin + p := fPixelList + j; + n := ord(p^); + end + else + n := 0; + // if first pass, make sure CurPass was initialized + if (rCurPass = 0) then rCurPass := 1; + inc(rCurX); // inc X position + if (rCurX >= fDescriptor.Width) then // bumping Y ? + begin + rCurX := 0; + inc(rCurY); + end; + end; + rLast := n; + result := n; + end; + + var + i,n, + cc: integer; // current code to translate + oc: integer; // last code encoded + found: boolean; // decoded string in prefix table? + pixel: byte; // lowest code to search for + ldx: integer; // last index found + fdx: integer; // current index found + b: byte; + begin + // init data block + fillchar(rCodeStack, sizeof(rCodeStack), 0); + rBitString := 0; + rBits := 0; + rCurX := 0; + rCurY := 0; + rCurPass := 0; + rLast := 0; + rUnget:= false; + + LZWReset; + // all within the data record + // always save the clear code first ... + LZWPutCode(rClearCode); + // and first pixel + oc := LZWReadBitmap; + LZWPutCode(oc); + // nothing found yet (but then, we haven't searched) + ldx := 0; + fdx := 0; + // and the rest of the pixels + rCount := 1; + while (rCount <= fPixelCount) do + begin + rSP := 0; // empty the stack of old data + n := LZWReadBitmap; // next pixel from the bitmap + LZWSaveCode(n); + cc := rCodeStack[0]; // beginning of the string + // add new encode table entry + rPrefix[rNextSlot] := oc; + rSuffix[rNextSlot] := cc; + inc(rNextSlot); + if (rNextSlot >= kGifCodeTableSize) then + rMaxVal := true + else if (rNextSlot > (1 shl rCurSize)) then + inc(rCurSize); + // find the running string of matching codes + ldx := cc; + found := true; + while (found and (rCount <= fPixelCount)) do + begin + n := LZWReadBitmap; + LZWSaveCode(n); + cc := rCodeStack[0]; + if (ldx < rFirstSlot) then + i := rFirstSlot + else + i := ldx + 1; + pixel := rCodeStack[rSP - 1]; + found := false; + while ((not found) and (i < rNextSlot)) do + begin + found := ((rPrefix[i] = ldx) and (rSuffix[i] = pixel)); + inc(i); + end; + if (found) then + begin + ldx := i - 1; + fdx := i - 1; + end; + end; + // if not found, save this index, and get the same code again + if (not found) then + begin + rUnget := true; + rLast := rCodeStack[rSP-1]; + dec(rSP); + cc := ldx; + end + else + cc := fdx; + // whatever we got, write it out as current table entry + LZWPutCode(cc); + if ((rMaxVal) and (rCount <= fPixelCount)) then + begin + LZWPutCode(rClearCode); + LZWReset; + cc := LZWReadBitmap; + LZWPutCode(cc); + end; + oc := cc; + end; + LZWPutCode(rEndCode); + // write out the rest of the bit string + while (rBits > 0) do + begin + b := (rBitString and $ff); + rBitString := (rBitString shr 8); + rBits := rBits - 8; + LZWStream.Write(b, 1); + end; + end; + +var i: integer; +begin + Destination.Position := 0; + with fHeader do + begin + // write the GIF signature + // if only one image, and no image extensions, then GIF is GIF87a, + // else use the updated version GIF98a + // we just added an extension block; the signature must be version 89a + Destination.Write(Signature, 3); + Destination.Write(Version, 3); + // write the overall GIF screen description to the source stream + Destination.Write(ScreenWidth, 2); // logical screen width + Destination.Write(ScreenHeight, 2); // logical screen height + Destination.Write(Packedbit, 1); // packed bit fields (Global Color valid, Global Color size, Sorted, Color Resolution) + Destination.Write(BackgroundColor, 1); // background color + Destination.Write(AspectRatio, 1); // pixel aspect ratio + if (Packedbit and $80)>0 then //Global Color valid + // write out color gobal table with RGB values + for i := 0 to fColorTableSize-1 do + Destination.Write(fColorTable[i], 3); + end; + // write out graphic extension for this image + Destination.Write(kGifExtensionSeparator, 1); // write the extension separator + Destination.Write(kGifLabelGraphic, 1); // write the extension label + Destination.Write(fGraphicsCtrlExt.BlockSize, 1); // block size (always 4) + Destination.Write(fGraphicsCtrlExt.Packedbit, 1); // packed bit field + Destination.Write(fGraphicsCtrlExt.DelayTime, 2); // delay time + Destination.Write(fGraphicsCtrlExt.ColorIndex, 1); // transparent color + Destination.Write(fGraphicsCtrlExt.Terminator, 1); // block terminator + // write actual image data + Destination.Write(kGifImageSeparator, 1); + // write the next image descriptor shortcut to the record fields + with fDescriptor do + begin + // write the basic descriptor record + Destination.Write(Left, 2); // left position + Destination.Write(Top, 2); // top position + Destination.Write(Width, 2); // size of image + Destination.Write(Height, 2); // size of image + Destination.Write(Packedbit, 1); // packed bit field + // there is no local color table defined we use global + LZWSize := 8; // the LZW minimum code size + Destination.Write(LZWSize, 1); + LZWStream := TMemoryStream.Create; // init the storage for compressed data + try + LZWEncode(); // encode the image and save it in LZWStream + // write out the data stream as a series of data blocks + LZWStream.Position := 0; + while (LZWStream.Position < LZWStream.Size) do + begin + i := LZWStream.Size - LZWStream.Position; + if (i > 255) then i := 255; + Destination.Write(i, 1); + Destination.CopyFrom(LZWStream, i); + end; + finally + FreeAndNil(LZWStream); + end; + Destination.Write(kGifBlockTerminator, 1); // block terminator + end; + Destination.Write(kGifTerminator, 1); // done with writing +end; + +procedure TFPWriterGIF.InternalWrite(Stream: TStream; Img: TFPCustomImage); +var + CT: TOpenColorTableArray; + Palette: TList; + PaletteHasAllColours: Boolean; + Mappings: array[BYTE, BYTE] of TList; + Tree: TOctreeNode; + LeafCount: Integer; + ReducibleNodes: TReducibleNodes; + LastColor: TColor; + LastColorIndex: Byte; + + // convert TFPCustomImage TFPColor to TColor + function FPColorToTColor(const FPColor: TFPColor): TColor; + begin + result := TColor(((FPColor.Red shr 8) and $ff) or (FPColor.Green and $ff00) or ((FPColor.Blue shl 8) and $ff0000)); + end; + + // try to make color table of all colors + function MakeColorTableOfAllColors(): Boolean; + var + Flags: array[Byte, Byte] of TBits; + x, y, ci: Cardinal; + Red, Green, Blue: Byte; + Cnt: word; + begin + result := false; + // init Flags + for y := 0 to $FF do + for x := 0 to $FF do + Flags[x, y] := nil; + try + for ci := 0 to $ff do + CT[ci] := 0; + Cnt := 0; + for y := 0 to Img.Height - 1 do + for x := 0 to Img.Width - 1 do + begin + Red := Byte(Img.Colors[x, y].red shr 8); + Green := Byte(Img.Colors[x, y].green shr 8); + Blue := Byte(Img.Colors[x, y].blue shr 8); + if (Flags[Red, Green]) = nil then + begin + Flags[Red, Green] := Classes.TBits.Create; + Flags[Red, Green].Size := 256; + end; + if not Flags[Red, Green].Bits[Blue] then + begin + CT[Cnt] := FPColorToTColor(Img.Colors[x, y]); + if Cnt = $ff then exit; + inc(Cnt); + Flags[Red, Green].Bits[Blue] := true; + end; + end; + result := true; + PaletteHasAllColours := true; + finally // free Flags + for y := 0 to $FF do + for x := 0 to $FF do + if Flags[x, y] <> nil then + FreeAndNil(Flags[x, y]); + end; + fColorTableSize := High(CT) + 1; + for x := 0 to fColorTableSize - 1 do + fColorTable[x] := CT[x]; + LastColor := clNone; + end; + + procedure MakeColorTableofReducedColors(); + procedure AddColor(var Node: TOctreeNode; const r, g, b: Byte; const Level: Integer; var ReducibleNodes: TReducibleNodes); + const mask: array[0..7] of Byte = ($80, $40, $20, $10, $08, $04, $02, $01); + var Index, Shift: Integer; + begin + if Node = nil then + Node := TOctreeNode.Create(Level, LeafCount, ReducibleNodes); + if Node.IsLeaf then + begin + Inc(Node.PixelCount); + Inc(Node.RedSum, r); + Inc(Node.GreenSum, g); + Inc(Node.BlueSum, b) + end + else + begin + Shift := 7 - Level; + Index := (((r and mask[Level]) shr Shift) shl 2) or (((g and mask[Level]) shr Shift) shl 1) or + ((b and mask[Level]) shr Shift); + AddColor(Node.Child[Index], r, g, b, Level + 1, ReducibleNodes) + end + end; + + procedure ReduceTree(var LeafCount: Integer; var ReducibleNodes: TReducibleNodes); + var + RedSum, BlueSum, GreenSum, Children, i: Integer; + Node: TOctreeNode; + begin + i := 7; + while (i > 0) and (ReducibleNodes[i] = nil) do + dec(i); + Node := ReducibleNodes[i]; + ReducibleNodes[i] := Node.Next; + RedSum := 0; + GreenSum := 0; + BlueSum := 0; + Children := 0; + for i := Low(ReducibleNodes) to High(ReducibleNodes) do + if Node.Child[i] <> nil then + begin + Inc(RedSum, Node.Child[i].RedSum); + Inc(GreenSum, Node.Child[i].GreenSum); + Inc(BlueSum, Node.Child[i].BlueSum); + Inc(Node.PixelCount, Node.Child[i].PixelCount); + Node.Child[i].Free; + Node.Child[i] := nil; + inc(Children) + end; + Node.IsLeaf := true; + Node.RedSum := RedSum; + Node.GreenSum := GreenSum; + Node.BlueSum := BlueSum; + Dec(LeafCount, Children - 1) + end; + + procedure GetPaletteColors(const Node: TOctreeNode; var RGBQuadArray: TRGBQuadArray256; var Index: integer); + var i: integer; + begin + if Node.IsLeaf then + begin + with RGBQuadArray[Index] do + begin + try + r := Byte(Node.RedSum div Node.PixelCount); + g := Byte(Node.GreenSum div Node.PixelCount); + b := Byte(Node.BlueSum div Node.PixelCount); + a := 0; + except + r := 0; + g := 0; + b := 0; + a := 0; + end; + a := 0 + end; + inc(Index); + end + else + for i := Low(Node.Child) to High(Node.Child) do + if Node.Child[i] <> nil then + GetPaletteColors(Node.Child[i], RGBQuadArray, Index) + end; + + procedure SetPalette(Pal: array of TColor; Size: integer); + var + PalSize, i: integer; + Col: PFPCompactImgRGB8BitValue; + x, y: Cardinal; + Red, Green, Blue: Byte; + Pcol: PInteger; + DistanceSquared, SmallestDistanceSquared: integer; + R1, G1, B1: Byte; + begin + if Size <> -1 then PalSize := Size else PalSize := High(Pal) + 1; + for i := 0 to PalSize - 1 do + begin + GetMem(Col, SizeOf(TFPCompactImgRGB8BitValue)); + Col^.r := Byte(Pal[i]); + Col^.g := Byte(Pal[i] shr 8); + Col^.b := Byte(Pal[i] shr 16); + Palette.Add(Col); + end; + for y := 0 to $ff do + for x := 0 to $ff do + Mappings[y,x] := nil; + for y := 0 to Img.Height - 1 do + for x := 0 to Img.Width - 1 do + begin + Red := Byte(Img.Colors[x, y].red shr 8); + Green := Byte(Img.Colors[x, y].green shr 8); + Blue := Byte(Img.Colors[x, y].blue shr 8); + //Small reduction of color space + dec(Red, Red mod 3); + dec(Green, Green mod 3); + dec(Blue, Blue mod 3); + if (Mappings[Red, Green]) = nil then + begin + Mappings[Red, Green] := TList.Create; + Mappings[Red, Green].Count := 256; + end; + if (Mappings[Red, Green].Items[Blue] = nil) then + begin + GetMem(Pcol, SizeOf(integer)); + PCol^ := 0; + SmallestDistanceSquared := $1000000; + for i := 0 to Palette.Count - 1 do + begin + R1 := PFPCompactImgRGB8BitValue(Palette[i])^.r; + G1 := PFPCompactImgRGB8BitValue(Palette[i])^.g; + B1 := PFPCompactImgRGB8BitValue(Palette[i])^.b; + DistanceSquared := (Red - R1) * (Red - R1) + (Green - G1) * (Green - G1) + (Blue - B1) * (Blue - B1); + if DistanceSquared < SmallestDistanceSquared then + begin + PCol^ := i; + if (Red = R1) and (Green = G1) and (Blue = B1) then break; + SmallestDistanceSquared := DistanceSquared; + end + end; + Mappings[Red, Green].Items[Blue] := PCol; + end; + end; + end; + + procedure DeleteTree(var Node: TOctreeNode); + var i: integer; + begin + for i := Low(TReducibleNodes) to High(TReducibleNodes) do + if Node.Child[i] <> nil then + DeleteTree(Node.Child[i]); + FreeAndNil(Node); + end; + + var + i, j, Index: integer; + QArr: TRGBQuadArray256; + begin + PaletteHasAllColours := false; + Tree := nil; + LeafCount := 0; + for i := Low(ReducibleNodes) to High(ReducibleNodes) do + ReducibleNodes[i] := nil; + if (Img.Height > 0) and (Img.Width > 0) then + for j := 0 to Img.Height - 1 do + for i := 0 to Img.Width - 1 do + begin + AddColor(Tree, Byte(Img.Colors[i,j].red shr 8), Byte(Img.Colors[i,j].green shr 8), Byte(Img.Colors[i,j].blue shr 8), 0, ReducibleNodes); + while LeafCount > 256 do + ReduceTree(LeafCount, ReducibleNodes) + end; + Index := 0; + GetPaletteColors(Tree, QArr, Index); + for i := 0 to LeafCount - 1 do + CT[i] := (QArr[i].b shl 16) + (QArr[i].g shl 8) + QArr[i].r; + fColorTableSize := LeafCount; + for i := 0 to fColorTableSize - 1 do + fColorTable[i] := CT[i]; + LastColor := clNone; + SetPalette(fColorTable, LeafCount); + if Tree <> nil then DeleteTree(Tree); + end; + + procedure ClearMappings; + var i, j, k: integer; + begin + { wp: Avoids crash at FreeMem - may result in a memory leak !!!! + for j := 0 to $FF do + for i := 0 to $FF do + begin + if Assigned(Mappings[i, j]) then + begin + for k := 0 to $FF do + FreeMem(Mappings[i, j].Items[k], SizeOf(TColor)); + Mappings[i, j].Free; + end; + Mappings[i, j] := nil; + end; + } + end; + + procedure SetPixel(X, Y: Integer; Value: TColor); + var + Val: integer; + PCol: PInteger; + R, G, B: byte; + begin + if not ((Img.Width >= X) and (Img.Height >= Y) and (X > -1) and (Y > -1)) then exit; + Val := -1; + if LastColor = Value then + Val := LastColorIndex + else + begin + if PaletteHasAllColours then + begin + TFPCompactImgRGBA8BitValue(Value).a := 0; + for Val := 0 to fColorTableSize - 1 do + if fColorTable[Val] = Value then break; + end + else + begin + B := Byte(Value shr 16); + B := B - (B mod 3); + G := Byte(Value shr 8); + G := G - (G mod 3); + R := Byte(Value); + R := R - (R mod 3); + Val := -1; + if Mappings[R, G] <> nil then + begin + PCol := Mappings[R, G].Items[B]; + if PCol <> nil then Val := PCol^; + end; + end; + LastColor := Value; + LastColorIndex := Val; + end; + fPixels^[Y * Img.Width + X] := Val; + end; + + // find the color within the color table; returns 0..255, -1 if color not found + function FindColorIndex(c: TColor): integer; + var i: integer; + begin + i := 0; + result := -1; + while (i -1) then + begin + Packedbit := Packedbit or $01; // transparent color given (Packedbit or $01) + ColorIndex := n; //transparent color index + end; + end; + DelayTime := 0; + Terminator := 0; // allways 0 + end; + + SaveToStream(Stream); + + if (fPixelList <> nil) then FreeMem(fPixelList); + FreeMem(fPixels); + fPixels := nil; +end; +{$ENDREGION} + +initialization + ImageHandlers.RegisterImageWriter ('GIF Graphics', 'gif', TFPWriterGif); +end. diff --git a/components/lazbarcodes/examples/qrcodegenerator/main.lfm b/components/lazbarcodes/examples/qrcodegenerator/main.lfm new file mode 100644 index 000000000..c8277f9c8 --- /dev/null +++ b/components/lazbarcodes/examples/qrcodegenerator/main.lfm @@ -0,0 +1,166 @@ +object MainForm: TMainForm + Left = 403 + Height = 326 + Top = 256 + Width = 380 + Caption = 'QRCode Generator' + ClientHeight = 326 + ClientWidth = 380 + Constraints.MinWidth = 300 + OnActivate = FormActivate + OnDestroy = FormDestroy + LCLVersion = '2.3.0.0' + object btnCreateQR: TButton + AnchorSideLeft.Control = Owner + AnchorSideTop.Control = edText + AnchorSideTop.Side = asrBottom + Left = 8 + Height = 25 + Top = 64 + Width = 108 + AutoSize = True + BorderSpacing.Left = 8 + BorderSpacing.Top = 16 + Caption = 'Create QR code' + OnClick = btnCreateQRClick + TabOrder = 0 + end + object edText: TEdit + AnchorSideLeft.Control = Owner + AnchorSideTop.Control = Label1 + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = Owner + AnchorSideRight.Side = asrBottom + Left = 8 + Height = 23 + Top = 25 + Width = 364 + Anchors = [akTop, akLeft, akRight] + BorderSpacing.Left = 8 + BorderSpacing.Top = 2 + BorderSpacing.Right = 8 + OnChange = edTextChange + TabOrder = 1 + Text = 'https://www.lazarus-ide.org/' + end + object btnSaveAsGIF: TButton + AnchorSideLeft.Control = btnCreateQR + AnchorSideTop.Control = btnCreateQR + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = btnCreateQR + AnchorSideRight.Side = asrBottom + Left = 8 + Height = 25 + Top = 97 + Width = 108 + Anchors = [akTop, akLeft, akRight] + BorderSpacing.Top = 8 + Caption = 'Save as GIF' + OnClick = btnSaveAsGIFClick + TabOrder = 2 + Visible = False + end + object btnSaveAsBMP: TButton + AnchorSideLeft.Control = btnCreateQR + AnchorSideTop.Control = btnSaveAsGIF + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = btnCreateQR + AnchorSideRight.Side = asrBottom + Left = 8 + Height = 25 + Top = 130 + Width = 108 + Anchors = [akTop, akLeft, akRight] + BorderSpacing.Top = 8 + Caption = 'Save as BMP' + OnClick = btnSaveAsBMPClick + TabOrder = 3 + Visible = False + end + object StatusBar: TStatusBar + Left = 0 + Height = 23 + Top = 303 + Width = 380 + Panels = <> + end + object btnSaveAsPNG: TButton + AnchorSideLeft.Control = btnCreateQR + AnchorSideTop.Control = btnSaveAsBMP + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = btnCreateQR + AnchorSideRight.Side = asrBottom + Left = 8 + Height = 25 + Top = 163 + Width = 108 + Anchors = [akTop, akLeft, akRight] + BorderSpacing.Top = 8 + Caption = 'Save as PNG' + OnClick = btnSaveAsPNGClick + TabOrder = 5 + Visible = False + end + object btnSaveAsJPEG: TButton + AnchorSideLeft.Control = btnCreateQR + AnchorSideTop.Control = btnSaveAsPNG + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = btnCreateQR + AnchorSideRight.Side = asrBottom + Left = 8 + Height = 25 + Top = 196 + Width = 108 + Anchors = [akTop, akLeft, akRight] + BorderSpacing.Top = 8 + Caption = 'Save as JPEG' + OnClick = btnSaveAsPNGClick + TabOrder = 6 + Visible = False + end + object Label1: TLabel + AnchorSideLeft.Control = Owner + AnchorSideTop.Control = Owner + Left = 8 + Height = 15 + Top = 8 + Width = 100 + BorderSpacing.Left = 8 + BorderSpacing.Top = 8 + Caption = 'Text to be encoded' + end + object btnSaveAsSVG: TButton + AnchorSideLeft.Control = btnCreateQR + AnchorSideTop.Control = btnSaveAsJPEG + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = btnCreateQR + AnchorSideRight.Side = asrBottom + Left = 8 + Height = 25 + Top = 229 + Width = 108 + Anchors = [akTop, akLeft, akRight] + BorderSpacing.Top = 8 + Caption = 'Save as SVG' + OnClick = btnSaveAsSVGClick + TabOrder = 7 + Visible = False + end + object btnSaveAsEPS: TButton + AnchorSideLeft.Control = btnCreateQR + AnchorSideTop.Control = btnSaveAsSVG + AnchorSideTop.Side = asrBottom + AnchorSideRight.Control = btnCreateQR + AnchorSideRight.Side = asrBottom + Left = 8 + Height = 25 + Top = 262 + Width = 108 + Anchors = [akTop, akLeft, akRight] + BorderSpacing.Top = 8 + Caption = 'Save as EPS' + OnClick = btnSaveAsEPSClick + TabOrder = 8 + Visible = False + end +end diff --git a/components/lazbarcodes/examples/qrcodegenerator/main.pas b/components/lazbarcodes/examples/qrcodegenerator/main.pas new file mode 100644 index 000000000..827fbc86c --- /dev/null +++ b/components/lazbarcodes/examples/qrcodegenerator/main.pas @@ -0,0 +1,170 @@ +unit main; + +{$mode objfpc}{$H+} + +interface + +uses + Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, ExtCtrls, + ComCtrls, LCLIntf, + fpimage, fpWriteGIF, + ubarcodes; + +type + TMyGifImage = class(TGifImage) + protected + class function GetWriterClass: TFPCustomImageWriterClass; override; + end; + + { TMainForm } + + TMainForm = class(TForm) + btnCreateQR: TButton; + btnSaveAsGIF: TButton; + btnSaveAsBMP: TButton; + btnSaveAsSVG: TButton; + btnSaveAsPNG: TButton; + btnSaveAsJPEG: TButton; + btnSaveAsEPS: TButton; + edText: TEdit; + Label1: TLabel; + StatusBar: TStatusBar; + procedure btnCreateQRClick(Sender: TObject); + procedure btnSaveAsEPSClick(Sender: TObject); + procedure btnSaveAsGIFClick(Sender: TObject); + procedure btnSaveAsBMPClick(Sender: TObject); + procedure btnSaveAsPNGClick(Sender: TObject); + procedure btnSaveAsSVGClick(Sender: TObject); + procedure edTextChange(Sender: TObject); + procedure FormActivate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + private + QRCode: TBarcodeQR; + procedure EnableButtons(Enable: Boolean); + procedure SaveQRCodeToImage(AFileName: String; AImageClass: TFPImageBitmapClass); + + public + + end; + +var + MainForm: TMainForm; + +implementation + +{$R *.lfm} + +class function TMyGifImage.GetWriterClass: TFPCustomImageWriterClass; +begin + Result := TFPWriterGIF; +end; + +{ TMainForm } + +procedure TMainForm.btnCreateQRClick(Sender: TObject); +begin + QRCode.Free; + QRCode := TBarcodeQR.Create(self); + QRCode.Text := edText.Text; + QRCode.Top := btnCreateQR.Top; + QRCode.Left := btnCreateQR.Left + btnCreateQR.Width + 10; + QRCode.Width := 168; + QRCode.Height := 168; + QRCode.Generate; + QRCode.Parent := self; + + EnableButtons(true); + StatusBar.simpleText := 'QRCode generated.'; +end; + +procedure TMainForm.btnSaveAsEPSClick(Sender: TObject); +var + fn: String; +begin + if QRCode = nil then + exit; + fn := 'qrcode.eps'; + QRCode.SaveToEpsFile(fn); + StatusBar.SimpleText := 'QRCode saved to "' + fn + '".'; +end; + +procedure TMainForm.btnSaveAsGIFClick(Sender: TObject); +begin + SaveQRCodeToImage('qrcode', TMyGifImage); +end; + +procedure TMainForm.btnSaveAsBMPClick(Sender: TObject); +begin + SaveQRCodeToImage('qrcode', TBitmap); +end; + +procedure TMainForm.btnSaveAsPNGClick(Sender: TObject); +begin + SaveQRCodeToImage('qrcode', TPortableNetworkGraphic); +end; + +procedure TMainForm.btnSaveAsSVGClick(Sender: TObject); +var + fn: String; +begin + if QRCode = nil then + exit; + fn := 'qrcode.svg'; + QRCode.SaveToSvgFile(fn); + StatusBar.SimpleText := 'QRCode saved to "' + fn + '".'; +end; + +procedure TMainForm.edTextChange(Sender: TObject); +begin + EnableButtons(false); +end; + +procedure TMainForm.FormActivate(Sender: TObject); +begin + ClientHeight := btnSaveAsEPS.Top + btnSaveAsEPS.Height + StatusBar.Height + 16; +end; + +procedure TMainForm.EnableButtons(Enable: Boolean); +begin + btnSaveAsGIF.Visible := Enable; + btnSaveAsBMP.Visible := Enable; + btnSaveAsPNG.Visible := Enable; + btnSaveAsJPEG.Visible := Enable; + btnSaveAsSVG.Visible := Enable; + btnSaveAsEPS.Visible := Enable; + if not Enable then StatusBar.SimpleText := ''; +end; + +procedure TMainForm.FormDestroy(Sender: TObject); +begin + QRCode.Free; +end; + +procedure TMainForm.SaveQRCodeToImage(AFileName: String; AImageClass: TFPImageBitmapClass); +var + ext: String; +begin + if QRCode = nil then + exit; + + if AImageClass = TBitmap then + ext := '.bmp' + else if AImageClass = TMyGifImage then + ext := '.gif' + else if AImageClass = TPortableNetworkGraphic then + ext := '.png' + else if AImageClass = TJpegImage then + ext := '.jpg' + else + raise Exception.Create('Image format not supported.'); + + AFileName := ChangeFileExt(AFileName, ext); + QRCode.SaveToFile(AFileName, AImageClass); + + StatusBar.SimpleText := 'QRCode saved to "' + AFileName + '".'; +end; + +initialization + TPicture.RegisterFileFormat('.gif', 'gif', TMyGifImage); +end. + diff --git a/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.ico b/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.ico new file mode 100644 index 0000000000000000000000000000000000000000..25c186a5bb97a93fa24b5172021ab18cd3146e4f GIT binary patch literal 65738 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 literal 0 HcmV?d00001 diff --git a/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.lpi b/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.lpi new file mode 100644 index 000000000..bd0f9fb4c --- /dev/null +++ b/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.lpi @@ -0,0 +1,87 @@ + + + + + + + + + + + + <Scaled Value="True"/> + <ResourceType Value="res"/> + <UseXPManifest Value="True"/> + <XPManifest> + <DpiAware Value="True"/> + </XPManifest> + <Icon Value="0"/> + </General> + <BuildModes Count="1"> + <Item1 Name="Default" Default="True"/> + </BuildModes> + <PublishOptions> + <Version Value="2"/> + <UseFileFilters Value="True"/> + </PublishOptions> + <RunParams> + <FormatVersion Value="2"/> + </RunParams> + <RequiredPackages Count="2"> + <Item1> + <PackageName Value="lazbarcodes"/> + </Item1> + <Item2> + <PackageName Value="LCL"/> + </Item2> + </RequiredPackages> + <Units Count="2"> + <Unit0> + <Filename Value="qrcodegen.lpr"/> + <IsPartOfProject Value="True"/> + <UnitName Value="QRCodeGen"/> + </Unit0> + <Unit1> + <Filename Value="main.pas"/> + <IsPartOfProject Value="True"/> + <ComponentName Value="MainForm"/> + <HasResources Value="True"/> + <ResourceBaseClass Value="Form"/> + </Unit1> + </Units> + </ProjectOptions> + <CompilerOptions> + <Version Value="11"/> + <PathDelim Value="\"/> + <Target> + <Filename Value="qrcodegen"/> + </Target> + <SearchPaths> + <IncludeFiles Value="$(ProjOutDir)"/> + <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/> + </SearchPaths> + <Linking> + <Debugging> + <DebugInfoType Value="dsDwarf3"/> + </Debugging> + <Options> + <Win32> + <GraphicApplication Value="True"/> + </Win32> + </Options> + </Linking> + </CompilerOptions> + <Debugging> + <Exceptions Count="3"> + <Item1> + <Name Value="EAbort"/> + </Item1> + <Item2> + <Name Value="ECodetoolError"/> + </Item2> + <Item3> + <Name Value="EFOpenError"/> + </Item3> + </Exceptions> + </Debugging> +</CONFIG> diff --git a/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.lpr b/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.lpr new file mode 100644 index 000000000..e7cf77259 --- /dev/null +++ b/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.lpr @@ -0,0 +1,25 @@ +program QRCodeGen; + +{$mode objfpc}{$H+} + +uses + {$IFDEF UNIX} + cthreads, + {$ENDIF} + {$IFDEF HASAMIGA} + athreads, + {$ENDIF} + Interfaces, // this includes the LCL widgetset + Forms, main + { you can add units after this }; + +{$R *.res} + +begin + RequireDerivedFormResource:=True; + Application.Scaled:=True; + Application.Initialize; + Application.CreateForm(TMainForm, MainForm); + Application.Run; +end. + diff --git a/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.res b/components/lazbarcodes/examples/qrcodegenerator/qrcodegen.res new file mode 100644 index 0000000000000000000000000000000000000000..bcdc066740f492b14744c6fd28b71ea333f35beb GIT binary patch literal 67820 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 X8E+$5Tca1(_#U_6wk-2>f{xCAVbktj literal 0 HcmV?d00001