📄 sdlsurface.html
字号:
<HTML><HEAD><TITLE>SDL_Surface</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+"><LINKREL="HOME"TITLE="SDL Library Documentation"HREF="index.html"><LINKREL="UP"TITLE="Video"HREF="video.html"><LINKREL="PREVIOUS"TITLE="SDL_PixelFormat"HREF="sdlpixelformat.html"><LINKREL="NEXT"TITLE="SDL_VideoInfo"HREF="sdlvideoinfo.html"></HEAD><BODYCLASS="REFENTRY"BGCOLOR="#FFF8DC"TEXT="#000000"LINK="#0000ee"VLINK="#551a8b"ALINK="#ff0000"><DIVCLASS="NAVHEADER"><TABLESUMMARY="Header navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">SDL Library Documentation</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><AHREF="sdlpixelformat.html"ACCESSKEY="P">Prev</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom"></TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><AHREF="sdlvideoinfo.html"ACCESSKEY="N">Next</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><H1><ANAME="SDLSURFACE"></A>SDL_Surface</H1><DIVCLASS="REFNAMEDIV"><ANAME="AEN3263"></A><H2>Name</H2>SDL_Surface -- Graphical Surface Structure</DIV><DIVCLASS="REFSECT1"><ANAME="AEN3266"></A><H2>Structure Definition</H2><PRECLASS="PROGRAMLISTING">typedef struct SDL_Surface { Uint32 flags; /* Read-only */ SDL_PixelFormat *format; /* Read-only */ int w, h; /* Read-only */ Uint16 pitch; /* Read-only */ void *pixels; /* Read-write */ /* clipping information */ SDL_Rect clip_rect; /* Read-only */ /* Reference count -- used when freeing surface */ int refcount; /* Read-mostly */ /* This structure also contains private fields not shown here */} SDL_Surface;</PRE></DIV><DIVCLASS="REFSECT1"><ANAME="AEN3269"></A><H2>Structure Data</H2><DIVCLASS="INFORMALTABLE"><ANAME="AEN3271"></A><P></P><TABLEBORDER="0"CLASS="CALSTABLE"><TBODY><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="STRUCTFIELD"><I>flags</I></TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface flags</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="STRUCTFIELD"><I>format</I></TT></TD><TDALIGN="LEFT"VALIGN="TOP">Pixel <AHREF="sdlpixelformat.html">format</A></TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="STRUCTFIELD"><I>w, h</I></TT></TD><TDALIGN="LEFT"VALIGN="TOP">Width and height of the surface</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="STRUCTFIELD"><I>pitch</I></TT></TD><TDALIGN="LEFT"VALIGN="TOP">Length of a surface scanline in bytes</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="STRUCTFIELD"><I>pixels</I></TT></TD><TDALIGN="LEFT"VALIGN="TOP">Pointer to the actual pixel data</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="STRUCTFIELD"><I>clip_rect</I></TT></TD><TDALIGN="LEFT"VALIGN="TOP">surface clip <AHREF="sdlrect.html">rectangle</A></TD></TR></TBODY></TABLE><P></P></DIV></DIV><DIVCLASS="REFSECT1"><ANAME="AEN3300"></A><H2>Description</H2><P><SPANCLASS="STRUCTNAME">SDL_Surface</SPAN>'s represent areas of "graphical"memory, memory that can be drawn to. The video framebuffer is returnedas a <SPANCLASS="STRUCTNAME">SDL_Surface</SPAN> by<AHREF="sdlsetvideomode.html"><TTCLASS="FUNCTION">SDL_SetVideoMode</TT></A>and <AHREF="sdlgetvideosurface.html"><TTCLASS="FUNCTION">SDL_GetVideoSurface</TT></A>.Most of the fields should be pretty obvious.<TTCLASS="STRUCTFIELD"><I>w</I></TT> and <TTCLASS="STRUCTFIELD"><I>h</I></TT> are thewidth and height of the surface in pixels.<TTCLASS="STRUCTFIELD"><I>pixels</I></TT> is a pointer to the actual pixel data,the surface should be <AHREF="sdllocksurface.html">locked</A>before accessing this field. The <TTCLASS="STRUCTFIELD"><I>clip_rect</I></TT> fieldis the clipping rectangle as set by<AHREF="sdlsetcliprect.html"><TTCLASS="FUNCTION">SDL_SetClipRect</TT></A>.</P><P>The following are supported in the<TTCLASS="STRUCTFIELD"><I>flags</I></TT> field.</P><DIVCLASS="INFORMALTABLE"><ANAME="AEN3318"></A><P></P><TABLEBORDER="1"CLASS="CALSTABLE"><TBODY><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_SWSURFACE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface is stored in system memory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_HWSURFACE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface is stored in video memory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_ASYNCBLIT</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface uses asynchronous blits if possible</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_ANYFORMAT</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Allows any pixel-format (Display surface)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_HWPALETTE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface has exclusive palette</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_DOUBLEBUF</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface is double buffered (Display surface)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_FULLSCREEN</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface is full screen (Display Surface)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_OPENGL</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface has an OpenGL context (Display Surface)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_OPENGLBLIT</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface supports OpenGL blitting (Display Surface)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_RESIZABLE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface is resizable (Display Surface)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_HWACCEL</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface blit uses hardware acceleration</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_SRCCOLORKEY</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface use colorkey blitting</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_RLEACCEL</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Colorkey blitting is accelerated with RLE</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_SRCALPHA</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface blit uses alpha blending</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="LITERAL">SDL_PREALLOC</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Surface uses preallocated memory</TD></TR></TBODY></TABLE><P></P></DIV></DIV><DIVCLASS="REFSECT1"><ANAME="AEN3381"></A><H2>See Also</H2><P><AHREF="sdlpixelformat.html"><SPANCLASS="STRUCTNAME">SDL_PixelFormat</SPAN></A></P></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLESUMMARY="Footer navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="sdlpixelformat.html"ACCESSKEY="P">Prev</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="index.html"ACCESSKEY="H">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="sdlvideoinfo.html"ACCESSKEY="N">Next</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">SDL_PixelFormat</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="video.html"ACCESSKEY="U">Up</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">SDL_VideoInfo</TD></TR></TABLE></DIV></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -