亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? install.doc

?? JPEG source code converts the image into compressed format
?? DOC
?? 第 1 頁 / 共 4 頁
字號:
NEED_FAR_POINTERS, and do NOT use jmemdos.c.  Use jmemnobs.c if the
environment supplies adequate virtual memory, otherwise use jmemansi.c or
jmemname.c.

You'll still need to be careful about binary I/O through stdin/stdout.
See the last paragraph of the previous section.


MS-DOS, Borland C:

Be sure to convert all the source files to DOS text format (CR/LF newlines).
Although Borland C will often work OK with unmodified Unix (LF newlines)
source files, sometimes it will give bogus compile errors.
"Illegal character '#'" is the most common such error.  (This is true with
Borland C 3.1, but perhaps is fixed in newer releases.)

If you want one-file command line style, just undefine TWO_FILE_COMMANDLINE.
jconfig.bcc already includes #define USE_SETMODE to make this work.
(fdopen does not work correctly.)


MS-DOS, Microsoft C:

makefile.mc6 works with Microsoft C, DOS Visual C++, etc.  It should only
be used if you want to build a 16-bit (small or medium memory model) program.

If you want one-file command line style, just undefine TWO_FILE_COMMANDLINE.
jconfig.mc6 already includes #define USE_SETMODE to make this work.
(fdopen does not work correctly.)

Note that this makefile assumes that the working copy of itself is called
"makefile".  If you want to call it something else, say "makefile.mak",
be sure to adjust the dependency line that reads "$(RFILE) : makefile".
Otherwise the make will fail because it doesn't know how to create "makefile".
Worse, some releases of Microsoft's make utilities give an incorrect error
message in this situation.

Old versions of MS C fail with an "out of macro expansion space" error
because they can't cope with the macro TRACEMS8 (defined in jerror.h).
If this happens to you, the easiest solution is to change TRACEMS8 to
expand to nothing.  You'll lose the ability to dump out JPEG coefficient
tables with djpeg -debug -debug, but at least you can compile.

Original MS C 6.0 is very buggy; it compiles incorrect code unless you turn
off optimization entirely (remove -O from CFLAGS).  6.00A is better, but it
still generates bad code if you enable loop optimizations (-Ol or -Ox).

MS C 8.0 crashes when compiling jquant1.c with optimization switch /Oo ...
which is on by default.  To work around this bug, compile that one file
with /Oo-.


Microsoft Windows (all versions), generic comments:

Some Windows system include files define typedef boolean as "unsigned char".
The IJG code also defines typedef boolean, but we make it "int" by default.
This doesn't affect the IJG programs because we don't import those Windows
include files.  But if you use the JPEG library in your own program, and some
of your program's files import one definition of boolean while some import the
other, you can get all sorts of mysterious problems.  A good preventive step
is to make the IJG library use "unsigned char" for boolean.  To do that,
add something like this to your jconfig.h file:
	/* Define "boolean" as unsigned char, not int, per Windows custom */
	#ifndef __RPCNDR_H__	/* don't conflict if rpcndr.h already read */
	typedef unsigned char boolean;
	#endif
	#define HAVE_BOOLEAN	/* prevent jmorecfg.h from redefining it */
(This is already in jconfig.vc, by the way.)

windef.h contains the declarations
	#define far
	#define FAR far
Since jmorecfg.h tries to define FAR as empty, you may get a compiler
warning if you include both jpeglib.h and windef.h (which windows.h
includes).  To suppress the warning, you can put "#ifndef FAR"/"#endif"
around the line "#define FAR" in jmorecfg.h.

When using the library in a Windows application, you will almost certainly
want to modify or replace the error handler module jerror.c, since our
default error handler does a couple of inappropriate things:
  1. it tries to write error and warning messages on stderr;
  2. in event of a fatal error, it exits by calling exit().

A simple stopgap solution for problem 1 is to replace the line
	fprintf(stderr, "%s\n", buffer);
(in output_message in jerror.c) with
	MessageBox(GetActiveWindow(),buffer,"JPEG Error",MB_OK|MB_ICONERROR);
It's highly recommended that you at least do that much, since otherwise
error messages will disappear into nowhere.  (Beginning with IJG v6b, this
code is already present in jerror.c; just define USE_WINDOWS_MESSAGEBOX in
jconfig.h to enable it.)

The proper solution for problem 2 is to return control to your calling
application after a library error.  This can be done with the setjmp/longjmp
technique discussed in libjpeg.doc and illustrated in example.c.  (NOTE:
some older Windows C compilers provide versions of setjmp/longjmp that
don't actually work under Windows.  You may need to use the Windows system
functions Catch and Throw instead.)

The recommended memory manager under Windows is jmemnobs.c; in other words,
let Windows do any virtual memory management needed.  You should NOT use
jmemdos.c nor jmemdosa.asm under Windows.

For Windows 3.1, we recommend compiling in medium or large memory model;
for newer Windows versions, use a 32-bit flat memory model.  (See the MS-DOS
sections above for more info about memory models.)  In the 16-bit memory
models only, you'll need to put
	#define MAX_ALLOC_CHUNK 65520L	/* Maximum request to malloc() */
into jconfig.h to limit allocation chunks to 64Kb.  (Without that, you'd
have to use huge memory model, which slows things down unnecessarily.)
jmemnobs.c works without modification in large or flat memory models, but to
use medium model, you need to modify its jpeg_get_large and jpeg_free_large
routines to allocate far memory.  In any case, you might like to replace
its calls to malloc and free with direct calls on Windows memory allocation
functions.

You may also want to modify jdatasrc.c and jdatadst.c to use Windows file
operations rather than fread/fwrite.  This is only necessary if your C
compiler doesn't provide a competent implementation of C stdio functions.

You might want to tweak the RGB_xxx macros in jmorecfg.h so that the library
will accept or deliver color pixels in BGR sample order, not RGB; BGR order
is usually more convenient under Windows.  Note that this change will break
the sample applications cjpeg/djpeg, but the library itself works fine.


Many people want to convert the IJG library into a DLL.  This is reasonably
straightforward, but watch out for the following:

  1. Don't try to compile as a DLL in small or medium memory model; use
large model, or even better, 32-bit flat model.  Many places in the IJG code
assume the address of a local variable is an ordinary (not FAR) pointer;
that isn't true in a medium-model DLL.

  2. Microsoft C cannot pass file pointers between applications and DLLs.
(See Microsoft Knowledge Base, PSS ID Number Q50336.)  So jdatasrc.c and
jdatadst.c don't work if you open a file in your application and then pass
the pointer to the DLL.  One workaround is to make jdatasrc.c/jdatadst.c
part of your main application rather than part of the DLL.

  3. You'll probably need to modify the macros GLOBAL() and EXTERN() to
attach suitable linkage keywords to the exported routine names.  Similarly,
you'll want to modify METHODDEF() and JMETHOD() to ensure function pointers
are declared in a way that lets application routines be called back through
the function pointers.  These macros are in jmorecfg.h.  Typical definitions
for a 16-bit DLL are:
	#define GLOBAL(type)		type _far _pascal _loadds _export
	#define EXTERN(type)		extern type _far _pascal _loadds
	#define METHODDEF(type)		static type _far _pascal
	#define JMETHOD(type,methodname,arglist)  \
		type (_far _pascal *methodname) arglist
For a 32-bit DLL you may want something like
	#define GLOBAL(type)		__declspec(dllexport) type
	#define EXTERN(type)		extern __declspec(dllexport) type
Although not all the GLOBAL routines are actually intended to be called by
the application, the performance cost of making them all DLL entry points is
negligible.

The unmodified IJG library presents a very C-specific application interface,
so the resulting DLL is only usable from C or C++ applications.  There has
been some talk of writing wrapper code that would present a simpler interface
usable from other languages, such as Visual Basic.  This is on our to-do list
but hasn't been very high priority --- any volunteers out there?


Microsoft Windows, Borland C:

The provided jconfig.bcc should work OK in a 32-bit Windows environment,
but you'll need to tweak it in a 16-bit environment (you'd need to define
NEED_FAR_POINTERS and MAX_ALLOC_CHUNK).  Beware that makefile.bcc will need
alteration if you want to use it for Windows --- in particular, you should
use jmemnobs.c not jmemdos.c under Windows.

Borland C++ 4.5 fails with an internal compiler error when trying to compile
jdmerge.c in 32-bit mode.  If enough people complain, perhaps Borland will fix
it.  In the meantime, the simplest known workaround is to add a redundant
definition of the variable range_limit in h2v1_merged_upsample(), at the head
of the block that handles odd image width (about line 268 in v6 jdmerge.c):
  /* If image width is odd, do the last output column separately */
  if (cinfo->output_width & 1) {
    register JSAMPLE * range_limit = cinfo->sample_range_limit; /* ADD THIS */
    cb = GETJSAMPLE(*inptr1);
Pretty bizarre, especially since the very similar routine h2v2_merged_upsample
doesn't trigger the bug.
Recent reports suggest that this bug does not occur with "bcc32a" (the
Pentium-optimized version of the compiler).

Another report from a user of Borland C 4.5 was that incorrect code (leading
to a color shift in processed images) was produced if any of the following
optimization switch combinations were used: 
	-Ot -Og
	-Ot -Op
	-Ot -Om
So try backing off on optimization if you see such a problem.  (Are there
several different releases all numbered "4.5"??)


Microsoft Windows, Microsoft Visual C++:

jconfig.vc should work OK with any Microsoft compiler for a 32-bit memory
model.  makefile.vc is intended for command-line use.  (If you are using
the Developer Studio environment, you may prefer the DevStudio project
files; see below.)

Some users feel that it's easier to call the library from C++ code if you
force VC++ to treat the library as C++ code, which you can do by renaming
all the *.c files to *.cpp (and adjusting the makefile to match).  This
avoids the need to put extern "C" { ... } around #include "jpeglib.h" in
your C++ application.


Microsoft Windows, Microsoft Developer Studio:

We include makefiles that should work as project files in DevStudio 4.2 or
later.  There is a library makefile that builds the IJG library as a static
Win32 library, and an application makefile that builds the sample applications
as Win32 console applications.  (Even if you only want the library, we
recommend building the applications so that you can run the self-test.)

To use:
1. Copy jconfig.vc to jconfig.h, makelib.ds to jpeg.mak, and
   makeapps.ds to apps.mak.  (Note that the renaming is critical!)
2. Click on the .mak files to construct project workspaces.
   (If you are using DevStudio more recent than 4.2, you'll probably
   get a message saying that the makefiles are being updated.)
3. Build the library project, then the applications project.
4. Move the application .exe files from `app`\Release to an
   appropriate location on your path.
5. To perform the self-test, execute the command line
	NMAKE /f makefile.vc  test


OS/2, Borland C++:

Watch out for optimization bugs in older Borland compilers; you may need
to back off the optimization switch settings.  See the comments in
makefile.bcc.


SGI:

On some SGI systems, you may need to set "AR2= ar -ts" in the Makefile.
If you are using configure, you can do this by saying
	./configure RANLIB='ar -ts'
This change is not needed on all SGIs.  Use it only if the make fails at the
stage of linking the completed programs.

On the MIPS R4000 architecture (Indy, etc.), the compiler option "-mips2"
reportedly speeds up the float DCT method substantially, enough to make it
faster than the default int method (but still slower than the fast int
method).  If you use -mips2, you may want to alter the default DCT method to
be float.  To do this, put "#define JDCT_DEFAULT JDCT_FLOAT" in jconfig.h.


VMS:

On an Alpha/VMS system with MMS, be sure to use the "/Marco=Alpha=1"
qualifier with MMS when building the JPEG package.

VAX/VMS v5.5-1 may have problems with the test step of the build procedure
reporting differences when it compares the original and test images.  If the
error points to the last block of the files, it is most likely bogus and may
be safely ignored.  It seems to be because the files are Stream_LF and
Backup/Compare has difficulty with the (presumably) null padded files.
This problem was not observed on VAX/VMS v6.1 or AXP/VMS v6.1.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产综合久久精品麻豆| 韩国理伦片一区二区三区在线播放| 午夜私人影院久久久久| 日本午夜一本久久久综合| 国产在线精品免费| 一本色道久久综合亚洲精品按摩| 欧美美女网站色| 国产欧美视频一区二区| 亚洲综合视频网| 国产精品综合一区二区| 一本一道久久a久久精品| 欧美成人性福生活免费看| 亚洲天堂精品在线观看| 日韩av电影免费观看高清完整版在线观看 | 奇米亚洲午夜久久精品| 国产盗摄一区二区| 欧美日韩免费电影| 国产精品乱码一区二区三区软件| 午夜欧美电影在线观看| 成人性生交大合| 欧美乱妇20p| 中文字幕一区二区三区在线播放| 日精品一区二区| 99精品视频在线播放观看| 91精品国产综合久久久蜜臀粉嫩| 国产目拍亚洲精品99久久精品| 午夜久久久影院| 波多野洁衣一区| 久久香蕉国产线看观看99| 亚洲国产欧美一区二区三区丁香婷| 国产一区二区三区在线观看免费| 欧美日韩国产高清一区二区三区| 国产精品污污网站在线观看| 免费不卡在线视频| 在线观看日韩精品| 国产精品色一区二区三区| 老色鬼精品视频在线观看播放| 91首页免费视频| 欧美国产成人精品| 激情综合色播激情啊| 在线播放一区二区三区| av资源站一区| 欧美精品一区二区三区一线天视频| 一区二区欧美在线观看| aa级大片欧美| 国产欧美视频在线观看| 国产一区视频网站| 日韩精品一区二区三区四区 | 欧美性猛交xxxxxx富婆| 欧美激情一区二区三区在线| 国内久久精品视频| 日韩欧美高清一区| 免费精品视频最新在线| 欧美日本国产一区| 亚洲一二三区视频在线观看| 91免费版pro下载短视频| 亚洲国产精品v| 国产大片一区二区| 久久久久国产精品人| 国模套图日韩精品一区二区 | 国产一区不卡视频| 日韩精品一区二区在线观看| 日韩精品电影在线| 在线播放国产精品二区一二区四区| 亚洲精品五月天| 色婷婷综合久色| 亚洲精品高清视频在线观看| 色偷偷88欧美精品久久久| 亚洲狠狠丁香婷婷综合久久久| av在线不卡电影| 成人欧美一区二区三区| 91碰在线视频| 亚洲国产va精品久久久不卡综合 | 免费观看在线色综合| 91精品国产色综合久久ai换脸 | 日韩精品一区二区三区在线 | 国产欧美日韩在线看| 风间由美中文字幕在线看视频国产欧美 | 亚洲国产成人porn| 欧美日韩免费电影| 日本在线观看不卡视频| 精品免费一区二区三区| 韩国精品主播一区二区在线观看| 久久嫩草精品久久久精品| 国产成人在线视频播放| 国产精品久久午夜夜伦鲁鲁| 99re在线精品| 亚洲一线二线三线视频| 欧美二区在线观看| 久久国产剧场电影| 国产色综合一区| 一本一本大道香蕉久在线精品 | 欧美日韩一区二区在线观看| 欧美中文字幕一区二区三区亚洲| 亚洲444eee在线观看| 欧美一卡在线观看| 国产精品自在在线| 亚洲免费资源在线播放| 欧美精品tushy高清| 精久久久久久久久久久| 国产精品伦理一区二区| 欧美三级日韩三级国产三级| 麻豆视频一区二区| 亚洲国产成人在线| 欧美色图天堂网| 美女一区二区久久| **欧美大码日韩| 3d成人动漫网站| 国产suv精品一区二区883| 樱桃视频在线观看一区| 欧美一区二区三区免费大片 | 中文字幕不卡的av| 欧美偷拍一区二区| 九色综合狠狠综合久久| 国产精品美女久久久久av爽李琼| 欧美日韩免费观看一区二区三区| 激情综合色播激情啊| 亚洲精品免费电影| 精品三级在线看| 色婷婷综合久久久| 激情图片小说一区| 亚洲精品成人悠悠色影视| 精品国产乱码久久久久久老虎| 不卡视频一二三| 美女视频黄 久久| 亚洲欧美日韩国产另类专区 | 国产一区二区电影| 亚洲综合色在线| 久久精品这里都是精品| 欧美麻豆精品久久久久久| 成人免费av网站| 日本视频中文字幕一区二区三区| 自拍偷拍欧美精品| 精品欧美一区二区三区精品久久| 色婷婷综合中文久久一本| 国产精品一区二区黑丝| 婷婷成人综合网| 1024亚洲合集| 久久精品亚洲国产奇米99| 欧美系列在线观看| 99精品久久只有精品| 国产一区二区在线视频| 天天亚洲美女在线视频| 最新中文字幕一区二区三区| 欧美草草影院在线视频| 欧美手机在线视频| 一本到不卡免费一区二区| 高清成人在线观看| 国产一区二区三区免费看| 午夜精品福利在线| 一区二区高清视频在线观看| 中文字幕欧美三区| 精品成人私密视频| 欧美一区二区三区的| 欧美最猛性xxxxx直播| 成人丝袜视频网| 国产成人aaaa| 国产一区二区在线电影| 狂野欧美性猛交blacked| 亚洲h动漫在线| 亚洲自拍欧美精品| 97久久精品人人做人人爽| 成人免费黄色大片| 国产成人福利片| 国产精品影视在线| 国产一区二区三区电影在线观看| 老司机免费视频一区二区三区| 日日夜夜免费精品| 亚洲成人av一区二区三区| 亚洲永久精品国产| 一二三区精品视频| 亚洲免费视频成人| 亚洲欧美国产毛片在线| 亚洲欧洲制服丝袜| 亚洲男女一区二区三区| 亚洲激情中文1区| 亚洲国产一区二区在线播放| 亚洲伊人伊色伊影伊综合网| 亚洲一二三四区不卡| 亚洲一线二线三线久久久| 亚洲一二三四在线观看| 午夜电影网亚洲视频| 午夜精品在线视频一区| 日韩av一区二区在线影视| 久久精品国产精品亚洲红杏| 久久99热国产| 国产一区二区视频在线| 成人丝袜18视频在线观看| 99精品视频在线免费观看| 91福利在线免费观看| 欧美中文字幕一区二区三区| 欧美日韩www| 欧美成人video| 中文字幕二三区不卡| 中文字幕制服丝袜一区二区三区| 亚洲欧美日韩中文播放| 亚洲最色的网站| 日韩国产在线观看一区| 狠狠狠色丁香婷婷综合久久五月| 粉嫩aⅴ一区二区三区四区|