mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-12 19:49:17 +02:00
--- Merging r48428 into '.':
U packages/pasjpeg/examples/example.pas --- Recording mergeinfo for merge of r48428 into '.': U . --- Merging r48431 into '.': A packages/pasjpeg/examples/demo.lpi --- Recording mergeinfo for merge of r48431 into '.': G . --- Merging r48463 into '.': U packages/graph/src/inc/graph.tex --- Recording mergeinfo for merge of r48463 into '.': G . --- Merging r48115 into '.': U packages/fv/src/views.pas --- Recording mergeinfo for merge of r48115 into '.': G . # revisions: 48428,48431,48463,48115 r48428 | florian | 2021-01-25 22:29:14 +0100 (Mon, 25 Jan 2021) | 1 line Changed paths: M /trunk/packages/pasjpeg/examples/example.pas * fix demo example for delphi_stream being defined r48431 | florian | 2021-01-26 23:00:33 +0100 (Tue, 26 Jan 2021) | 1 line Changed paths: A /trunk/packages/pasjpeg/examples/demo.lpi + lazarus project for demo r48463 | nickysn | 2021-01-31 12:08:21 +0100 (Sun, 31 Jan 2021) | 1 line Changed paths: M /trunk/packages/graph/src/inc/graph.tex * set eol-style=native and mime-type=text/plain to graph.tex r48115 | florian | 2021-01-08 17:33:05 +0100 (Fri, 08 Jan 2021) | 1 line Changed paths: M /trunk/packages/fv/src/views.pas * avoid div by zero in TView.CalcBounds.GrowI, resolves #30922 git-svn-id: branches/fixes_3_2@48511 -
This commit is contained in:
parent
c0b2f99585
commit
48ba8f691d
3
.gitattributes
vendored
3
.gitattributes
vendored
@ -5117,7 +5117,7 @@ packages/graph/src/inc/clip.inc svneol=native#text/plain
|
|||||||
packages/graph/src/inc/fills.inc svneol=native#text/plain
|
packages/graph/src/inc/fills.inc svneol=native#text/plain
|
||||||
packages/graph/src/inc/fontdata.inc svneol=native#text/plain
|
packages/graph/src/inc/fontdata.inc svneol=native#text/plain
|
||||||
packages/graph/src/inc/graph.inc svneol=native#text/plain
|
packages/graph/src/inc/graph.inc svneol=native#text/plain
|
||||||
packages/graph/src/inc/graph.tex -text
|
packages/graph/src/inc/graph.tex svneol=native#text/plain
|
||||||
packages/graph/src/inc/graphh.inc svneol=native#text/plain
|
packages/graph/src/inc/graphh.inc svneol=native#text/plain
|
||||||
packages/graph/src/inc/gtext.inc svneol=native#text/plain
|
packages/graph/src/inc/gtext.inc svneol=native#text/plain
|
||||||
packages/graph/src/inc/makefile.inc svneol=native#text/plain
|
packages/graph/src/inc/makefile.inc svneol=native#text/plain
|
||||||
@ -8064,6 +8064,7 @@ packages/pasjpeg/examples/cderror.pas svneol=native#text/plain
|
|||||||
packages/pasjpeg/examples/cdjpeg.pas svneol=native#text/plain
|
packages/pasjpeg/examples/cdjpeg.pas svneol=native#text/plain
|
||||||
packages/pasjpeg/examples/cjpeg.pas svneol=native#text/plain
|
packages/pasjpeg/examples/cjpeg.pas svneol=native#text/plain
|
||||||
packages/pasjpeg/examples/cjpeg.res svneol=native#text/plain
|
packages/pasjpeg/examples/cjpeg.res svneol=native#text/plain
|
||||||
|
packages/pasjpeg/examples/demo.lpi svneol=native#text/plain
|
||||||
packages/pasjpeg/examples/demo.pas svneol=native#text/plain
|
packages/pasjpeg/examples/demo.pas svneol=native#text/plain
|
||||||
packages/pasjpeg/examples/demo.res svneol=native#text/plain
|
packages/pasjpeg/examples/demo.res svneol=native#text/plain
|
||||||
packages/pasjpeg/examples/djpeg.pas svneol=native#text/plain
|
packages/pasjpeg/examples/djpeg.pas svneol=native#text/plain
|
||||||
|
@ -1899,6 +1899,7 @@ VAR S, D: Sw_Integer; Min, Max: TPoint;
|
|||||||
PROCEDURE GrowI (Var I: Sw_Integer);
|
PROCEDURE GrowI (Var I: Sw_Integer);
|
||||||
BEGIN
|
BEGIN
|
||||||
If (GrowMode AND gfGrowRel = 0) Then Inc(I, D)
|
If (GrowMode AND gfGrowRel = 0) Then Inc(I, D)
|
||||||
|
Else If S = D then I := 1
|
||||||
Else I := (I * S + (S - D) SHR 1) DIV (S - D); { Calc grow value }
|
Else I := (I * S + (S - D) SHR 1) DIV (S - D); { Calc grow value }
|
||||||
END;
|
END;
|
||||||
|
|
||||||
|
53
packages/pasjpeg/examples/demo.lpi
Normal file
53
packages/pasjpeg/examples/demo.lpi
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<CONFIG>
|
||||||
|
<ProjectOptions>
|
||||||
|
<Version Value="12"/>
|
||||||
|
<General>
|
||||||
|
<Flags>
|
||||||
|
<MainUnitHasCreateFormStatements Value="False"/>
|
||||||
|
<MainUnitHasTitleStatement Value="False"/>
|
||||||
|
<MainUnitHasScaledStatement Value="False"/>
|
||||||
|
<UseDefaultCompilerOptions Value="True"/>
|
||||||
|
</Flags>
|
||||||
|
<SessionStorage Value="InProjectDir"/>
|
||||||
|
<Title Value="demo"/>
|
||||||
|
<UseAppBundle Value="False"/>
|
||||||
|
<ResourceType Value="res"/>
|
||||||
|
</General>
|
||||||
|
<BuildModes>
|
||||||
|
<Item Name="Default" Default="True"/>
|
||||||
|
</BuildModes>
|
||||||
|
<PublishOptions>
|
||||||
|
<Version Value="2"/>
|
||||||
|
<UseFileFilters Value="True"/>
|
||||||
|
</PublishOptions>
|
||||||
|
<RunParams>
|
||||||
|
<FormatVersion Value="2"/>
|
||||||
|
</RunParams>
|
||||||
|
<Units>
|
||||||
|
<Unit>
|
||||||
|
<Filename Value="demo.pas"/>
|
||||||
|
<IsPartOfProject Value="True"/>
|
||||||
|
<UnitName Value="Demo"/>
|
||||||
|
</Unit>
|
||||||
|
</Units>
|
||||||
|
</ProjectOptions>
|
||||||
|
<CompilerOptions>
|
||||||
|
<Version Value="11"/>
|
||||||
|
<Target>
|
||||||
|
<Filename Value="demo"/>
|
||||||
|
</Target>
|
||||||
|
<SearchPaths>
|
||||||
|
<IncludeFiles Value="$(ProjOutDir)"/>
|
||||||
|
<OtherUnitFiles Value="../src"/>
|
||||||
|
<UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
|
||||||
|
</SearchPaths>
|
||||||
|
</CompilerOptions>
|
||||||
|
<Debugging>
|
||||||
|
<Exceptions>
|
||||||
|
<Item>
|
||||||
|
<Name Value="ECompilerAbort"/>
|
||||||
|
</Item>
|
||||||
|
</Exceptions>
|
||||||
|
</Debugging>
|
||||||
|
</CONFIG>
|
@ -1,3 +1,8 @@
|
|||||||
|
{$IFDEF FPC}
|
||||||
|
{$MODE DELPHI}
|
||||||
|
{$GOTO ON}
|
||||||
|
{$DEFINE DELPHI_STREAM}
|
||||||
|
{$ENDIF}
|
||||||
Unit example;
|
Unit example;
|
||||||
|
|
||||||
{ This file illustrates how to use the IJG code as a subroutine library
|
{ This file illustrates how to use the IJG code as a subroutine library
|
||||||
@ -37,6 +42,10 @@ function read_JPEG_file (filename : string) : boolean;
|
|||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
{$ifdef delphi_stream}
|
||||||
|
uses
|
||||||
|
Classes;
|
||||||
|
{$endif delphi_stream}
|
||||||
{ <setjmp.h> is used for the optional error recovery mechanism shown in
|
{ <setjmp.h> is used for the optional error recovery mechanism shown in
|
||||||
the second part of the example. }
|
the second part of the example. }
|
||||||
|
|
||||||
@ -93,7 +102,11 @@ var
|
|||||||
|
|
||||||
jerr : jpeg_error_mgr;
|
jerr : jpeg_error_mgr;
|
||||||
{ More stuff }
|
{ More stuff }
|
||||||
|
{$ifdef delphi_stream}
|
||||||
|
outfile : TFileStream;
|
||||||
|
{$else delphi_stream}
|
||||||
outfile : FILE; { target file }
|
outfile : FILE; { target file }
|
||||||
|
{$endif delphi_stream}
|
||||||
row_pointer : array[0..0] of JSAMPROW ; { pointer to JSAMPLE row[s] }
|
row_pointer : array[0..0] of JSAMPROW ; { pointer to JSAMPLE row[s] }
|
||||||
row_stride : int; { physical row width in image buffer }
|
row_stride : int; { physical row width in image buffer }
|
||||||
begin
|
begin
|
||||||
@ -117,7 +130,9 @@ begin
|
|||||||
stdio stream. You can also write your own code to do something else.
|
stdio stream. You can also write your own code to do something else.
|
||||||
VERY IMPORTANT: use "b" option to fopen() if you are on a machine that
|
VERY IMPORTANT: use "b" option to fopen() if you are on a machine that
|
||||||
requires it in order to write binary files. }
|
requires it in order to write binary files. }
|
||||||
|
{$ifdef delphi_stream}
|
||||||
|
outfile := TFileStream.Create(filename, fmCreate);
|
||||||
|
{$else delphi_stream}
|
||||||
Assign(outfile, filename);
|
Assign(outfile, filename);
|
||||||
{$push}{$I-}
|
{$push}{$I-}
|
||||||
ReWrite(outfile, 1);
|
ReWrite(outfile, 1);
|
||||||
@ -127,6 +142,7 @@ begin
|
|||||||
WriteLn(output, 'can''t open ', filename);
|
WriteLn(output, 'can''t open ', filename);
|
||||||
Halt(1);
|
Halt(1);
|
||||||
end;
|
end;
|
||||||
|
{$endif delphi_stream}
|
||||||
jpeg_stdio_dest(@cinfo, @outfile);
|
jpeg_stdio_dest(@cinfo, @outfile);
|
||||||
|
|
||||||
{ Step 3: set parameters for compression }
|
{ Step 3: set parameters for compression }
|
||||||
@ -179,7 +195,11 @@ begin
|
|||||||
|
|
||||||
jpeg_finish_compress(@cinfo);
|
jpeg_finish_compress(@cinfo);
|
||||||
{ After finish_compress, we can close the output file. }
|
{ After finish_compress, we can close the output file. }
|
||||||
|
{$ifdef delphi_stream}
|
||||||
|
outfile.Free;
|
||||||
|
{$else delphi_stream}
|
||||||
system.close(outfile);
|
system.close(outfile);
|
||||||
|
{$endif delphi_stream}
|
||||||
|
|
||||||
{ Step 7: release JPEG compression object }
|
{ Step 7: release JPEG compression object }
|
||||||
|
|
||||||
@ -321,7 +341,11 @@ var
|
|||||||
|
|
||||||
jerr : my_error_mgr;
|
jerr : my_error_mgr;
|
||||||
{ More stuff }
|
{ More stuff }
|
||||||
infile : FILE; { source file }
|
{$ifdef delphi_stream}
|
||||||
|
infile : TFileStream;
|
||||||
|
{$else delphi_stream}
|
||||||
|
infile : FILE; { target file }
|
||||||
|
{$endif delphi_stream}
|
||||||
buffer : JSAMPARRAY; { Output row buffer }
|
buffer : JSAMPARRAY; { Output row buffer }
|
||||||
row_stride : int; { physical row width in output buffer }
|
row_stride : int; { physical row width in output buffer }
|
||||||
begin
|
begin
|
||||||
@ -331,6 +355,9 @@ begin
|
|||||||
VERY IMPORTANT: use "b" option to fopen() if you are on a machine that
|
VERY IMPORTANT: use "b" option to fopen() if you are on a machine that
|
||||||
requires it in order to read binary files. }
|
requires it in order to read binary files. }
|
||||||
|
|
||||||
|
{$ifdef delphi_stream}
|
||||||
|
infile := TFileStream.Create(filename, fmOpenRead);
|
||||||
|
{$else delphi_stream}
|
||||||
Assign(infile, filename);
|
Assign(infile, filename);
|
||||||
{$push}{$I-}
|
{$push}{$I-}
|
||||||
Reset(infile, 1);
|
Reset(infile, 1);
|
||||||
@ -341,6 +368,7 @@ begin
|
|||||||
read_JPEG_file := FALSE;
|
read_JPEG_file := FALSE;
|
||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
|
{$endif delphi_stream}
|
||||||
|
|
||||||
{ Step 1: allocate and initialize JPEG decompression object }
|
{ Step 1: allocate and initialize JPEG decompression object }
|
||||||
|
|
||||||
@ -356,7 +384,11 @@ begin
|
|||||||
{ Nomssi: if we get here, we are in trouble, because e.g. cinfo.mem
|
{ Nomssi: if we get here, we are in trouble, because e.g. cinfo.mem
|
||||||
is not guaranted to be NIL }
|
is not guaranted to be NIL }
|
||||||
jpeg_destroy_decompress(@cinfo);
|
jpeg_destroy_decompress(@cinfo);
|
||||||
|
{$ifdef delphi_stream}
|
||||||
|
infile.Free;
|
||||||
|
{$else delphi_stream}
|
||||||
system.close(infile);
|
system.close(infile);
|
||||||
|
{$endif delphi_stream}
|
||||||
read_JPEG_file := FALSE;
|
read_JPEG_file := FALSE;
|
||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
@ -440,7 +472,11 @@ begin
|
|||||||
Here we postpone it until after no more JPEG errors are possible,
|
Here we postpone it until after no more JPEG errors are possible,
|
||||||
so as to simplify the setjmp error logic above. (Actually, I don't
|
so as to simplify the setjmp error logic above. (Actually, I don't
|
||||||
think that jpeg_destroy can do an error exit, but why assume anything...) }
|
think that jpeg_destroy can do an error exit, but why assume anything...) }
|
||||||
|
{$ifdef delphi_stream}
|
||||||
|
infile.Free;
|
||||||
|
{$else delphi_stream}
|
||||||
system.close(infile);
|
system.close(infile);
|
||||||
|
{$endif delphi_stream}
|
||||||
|
|
||||||
{ At this point you may want to check to see whether any corrupt-data
|
{ At this point you may want to check to see whether any corrupt-data
|
||||||
warnings occurred (test whether jerr.pub.num_warnings is nonzero). }
|
warnings occurred (test whether jerr.pub.num_warnings is nonzero). }
|
||||||
|
Loading…
Reference in New Issue
Block a user