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

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

?? ddipath.cpp

?? win2000打印機驅動代碼
?? CPP
字號:
/*
 * @file uni/ddipath.cpp DDI hook path function.
 *
 * W2kPrintDrvSample
 *
 * Copyright (C) 2004, terrificskyfox <terrificskyfox@yahoo.com.cn>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * 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.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

#include "precomp.h"
#include "debug.h"
#include "oemuni.h"
#include "devmode.h"
#include "color.h"
#include "ddipath.h"


/*
 *  Implementations
 */

/*
 * Function: OEMFillPath
 *
 * Purpose: DrvFillPath is an optional entry point(according to flags in
 *          DEVINFO) to handle the filling of closed paths.
 *
 * Return: BOOL
 *
BOOL APIENTRY
OEMFillPath(
    SURFOBJ    *pso,
    PATHOBJ    *ppo,
    CLIPOBJ    *pco,
    BRUSHOBJ   *pbo,
    POINTL     *pptlBrushOrg,
    MIX         mix,
    FLONG       flOptions)
{
    TERSE(UNITEXT("OEMFillPath() entry.\r\n"));


    PDEVOBJ  pdevobj = (PDEVOBJ)pso->dhpdev;
    POEMPDEV pOemPDEV = (POEMPDEV)pdevobj->pdevOEM;


    // turn around to call Unidrv
    return (((PFN_DrvFillPath)(pOemPDEV->pfnUnidrv[UD_DrvFillPath])) (
            pso,
            ppo,
            pco,
            pbo,
            pptlBrushOrg,
            mix,
            flOptions
			));
}
*/

/*
 * Function: OEMGradientFill
 *
 * Purpose: DrvGradientFill shades the specified primitives.
 *
 * Return: BOOL
 *
BOOL APIENTRY
OEMGradientFill(
	SURFOBJ    *psoDest,
	CLIPOBJ    *pco,
	XLATEOBJ   *pxlo,
	TRIVERTEX  *pVertex,
	ULONG       nVertex,
	PVOID       pMesh,
	ULONG       nMesh,
	RECTL      *prclExtents,
	POINTL     *pptlDitherOrg,
	ULONG       ulMode)
{
    TERSE(UNITEXT("OEMGradientFill() entry.\r\n"));


	PDEVOBJ  pdevobj = (PDEVOBJ)psoDest->dhpdev;
	POEMPDEV pOemPDEV = (POEMPDEV)pdevobj->pdevOEM;


    // turn around to call Unidrv
    return (((PFN_DrvGradientFill)(pOemPDEV->pfnUnidrv[UD_DrvGradientFill])) (
            psoDest,
            pco,
            pxlo,
            pVertex,
            nVertex,
            pMesh,
            nMesh,
            prclExtents,
            pptlDitherOrg,
            ulMode
            ));
}
*/

/*
 * Function: OEMLineTo
 *
 * Purpose: DrvLineTo draws a single, solid, integer-only cosmetic line.
 *
 * Return: BOOL
 *
BOOL APIENTRY
OEMLineTo(
    SURFOBJ    *pso,
    CLIPOBJ    *pco,
    BRUSHOBJ   *pbo,
    LONG        x1,
    LONG        y1,
    LONG        x2,
    LONG        y2,
    RECTL      *prclBounds,
    MIX         mix)
{
    TERSE(UNITEXT("OEMLineTo() entry.\r\n"));


    PDEVOBJ  pdevobj = (PDEVOBJ)pso->dhpdev;
    POEMPDEV pOemPDEV = (POEMPDEV)pdevobj->pdevOEM;


    // turn around to call Unidrv
	return (((PFN_DrvLineTo)(pOemPDEV->pfnUnidrv[UD_DrvLineTo])) (
            pso,
            pco,
            pbo,
            x1,
            y1,
            x2,
            y2,
            prclBounds,
            mix
			));
}
*/

/*
 * Function: OEMStrokeAndFillPath
 *
 * Purpose: DrvStrokeAndFillPath strokes and fills a path concurrently
 *          (according to flags in DEVINFO structure).
 *
 * Return: BOOL
 *
BOOL APIENTRY
OEMStrokeAndFillPath(
    SURFOBJ    *pso,
    PATHOBJ    *ppo,
    CLIPOBJ    *pco,
    XFORMOBJ   *pxo,
    BRUSHOBJ   *pboStroke,
    LINEATTRS  *plineattrs,
    BRUSHOBJ   *pboFill,
    POINTL     *pptlBrushOrg,
    MIX         mixFill,
    FLONG       flOptions)
{
	TERSE(UNITEXT("OEMStrokeAndFillPath() entry.\r\n"));


	PDEVOBJ  pdevobj = (PDEVOBJ)pso->dhpdev;
	POEMPDEV pOemPDEV = (POEMPDEV)pdevobj->pdevOEM;


    // turn around to call Unidrv
    return (((PFN_DrvStrokeAndFillPath)(pOemPDEV->pfnUnidrv[UD_DrvStrokeAndFillPath])) (
            pso,
            ppo,
            pco,
            pxo,
            pboStroke,
            plineattrs,
            pboFill,
            pptlBrushOrg,
            mixFill,
            flOptions
			));
}
*/

/*
 * Function: OEMStrokePath
 *
 * Purpose: The DrvStrokePath function strokes (outlines) a path(according to
 *          flags in DEVINFO structure).
 *
 * Return: BOOL
 */
BOOL APIENTRY
OEMStrokePath(
    SURFOBJ    *pso,
    PATHOBJ    *ppo,
    CLIPOBJ    *pco,
    XFORMOBJ   *pxo,
    BRUSHOBJ   *pbo,
    POINTL     *pptlBrushOrg,
    LINEATTRS  *plineattrs,
    MIX         mix)
{
    TERSE(UNITEXT("OEMStokePath() entry.\r\n"));


    PDEVOBJ  pdevobj = (PDEVOBJ)pso->dhpdev;
    POEMPDEV pOemPDEV = (POEMPDEV)pdevobj->pdevOEM;
	POEMDEV	 pOemDev = (POEMDEV)pdevobj->pOEMDM;
	short	 Index = PCOLOR_BLACK;


	// judge color
	if(pbo)
		Index = differ_color(pbo->iSolidColor);

	if(pOemDev->dmPenInfo[Index].pibPath)
	{
	    // turn around to call Unidrv
		return (((PFN_DrvStrokePath)(pOemPDEV->pfnUnidrv[UD_DrvStrokePath])) (
			    pso,
				ppo,
				pco,
		        pxo,
			    pbo,
				pptlBrushOrg,
			    plineattrs,
				mix
				));
	}

	return TRUE;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91福利视频久久久久| 天堂在线亚洲视频| 色综合久久久网| 国产精品福利一区| 91麻豆国产福利在线观看| 国产精品久久综合| 色又黄又爽网站www久久| 亚洲欧美偷拍另类a∨色屁股| 成人高清视频免费观看| 日韩一区在线免费观看| 色综合久久天天综合网| 亚洲国产精品久久不卡毛片 | 日本免费新一区视频| 欧美成人aa大片| 成人高清免费观看| 亚洲国产成人porn| 日韩精品综合一本久道在线视频| 久久99久久久欧美国产| 欧美激情中文字幕| 欧美三级视频在线观看| 蜜臀va亚洲va欧美va天堂| 国产亚洲视频系列| 欧美另类z0zxhd电影| 成人av网址在线| 玖玖九九国产精品| 亚洲精品视频在线观看网站| 日韩欧美国产一区二区三区| 93久久精品日日躁夜夜躁欧美| 日本sm残虐另类| 亚洲日本在线观看| 久久久综合视频| 91精品中文字幕一区二区三区| 成人一区二区三区视频在线观看| 亚洲1区2区3区4区| 亚洲欧美偷拍卡通变态| 久久久久国产精品厨房| 欧美电影免费提供在线观看| 欧美日韩卡一卡二| 色综合中文字幕国产 | 91麻豆精品国产91| 99天天综合性| 国产成人免费网站| 国产成人啪午夜精品网站男同| 蜜臀av一区二区在线免费观看| 亚洲成人动漫在线免费观看| 夜夜嗨av一区二区三区中文字幕| 中文字幕一区二区不卡| 国产精品你懂的在线| 国产精品视频免费| 亚洲欧洲日韩综合一区二区| 久久久99免费| 国产精品二三区| 一卡二卡三卡日韩欧美| 午夜精品福利久久久| 久久av中文字幕片| 国产aⅴ精品一区二区三区色成熟| 粉嫩av一区二区三区粉嫩| thepron国产精品| 欧美日韩一区二区三区在线| 日韩欧美自拍偷拍| 欧美激情中文字幕一区二区| 一区二区三区欧美亚洲| 日韩成人一级片| 成人教育av在线| 91精品国产综合久久久蜜臀粉嫩| 久久青草国产手机看片福利盒子| 亚洲男同1069视频| 日本v片在线高清不卡在线观看| 国产在线不卡一卡二卡三卡四卡| 91在线视频观看| 精品国产一区二区精华| 亚洲免费视频中文字幕| 久久国产三级精品| 欧美在线免费播放| 中文字幕亚洲在| 捆绑调教一区二区三区| 91玉足脚交白嫩脚丫在线播放| 3d动漫精品啪啪| 日韩精品一区二区三区在线播放| 亚洲黄网站在线观看| 国产成人aaa| 日韩精品最新网址| 日本欧美一区二区| 欧美视频一区在线| 一区二区三区四区视频精品免费| 美女脱光内衣内裤视频久久影院| 欧美日韩在线一区二区| 中文字幕亚洲一区二区va在线| 久久91精品久久久久久秒播| 欧美乱熟臀69xxxxxx| 伊人婷婷欧美激情| 色婷婷狠狠综合| 亚洲人精品午夜| 91蝌蚪porny| 亚洲另类色综合网站| 91久久精品一区二区二区| 亚洲男同性视频| 欧美精品v国产精品v日韩精品 | 香蕉成人啪国产精品视频综合网| 色综合久久88色综合天天6| 国产精品久久综合| 99国产精品久久久久| 樱桃视频在线观看一区| 91国模大尺度私拍在线视频| 亚洲一区二区三区中文字幕 | 欧美午夜片在线观看| 五月激情丁香一区二区三区| 欧美日韩国产一级二级| 国产资源精品在线观看| 国产精品欧美极品| 欧美高清www午色夜在线视频| 亚洲va欧美va天堂v国产综合| 日韩亚洲欧美中文三级| 老色鬼精品视频在线观看播放| 国产午夜亚洲精品羞羞网站| 99久免费精品视频在线观看| 午夜精品久久久久久久久| 7777精品伊人久久久大香线蕉 | 国产精品成人一区二区艾草| 欧美性大战久久久久久久蜜臀| 久久av资源站| 视频一区二区中文字幕| 中文字幕一区二区在线播放| 欧美精品一二三| 99re这里都是精品| 精品中文字幕一区二区| 亚洲一区免费视频| 国产精品系列在线| 精品国内片67194| 91精品国产手机| 欧美美女一区二区三区| 福利一区二区在线| 捆绑调教美女网站视频一区| 亚洲高清久久久| 亚洲一区二区精品久久av| 国产精品乱码人人做人人爱| 精品盗摄一区二区三区| 日韩欧美精品三级| 91精品视频网| 精品少妇一区二区三区在线视频 | 91麻豆精品久久久久蜜臀 | 在线观看91视频| 欧美性生交片4| 欧美视频完全免费看| 欧美在线不卡视频| 欧美喷潮久久久xxxxx| 欧美日韩久久不卡| 日韩视频免费观看高清完整版| 日韩欧美一级精品久久| 日韩视频在线你懂得| 欧美一级午夜免费电影| 精品免费视频一区二区| 国产精品每日更新| 精品国产乱码久久久久久免费| 久久久精品国产99久久精品芒果| 久久久不卡网国产精品一区| 国产清纯在线一区二区www| 国产精品国产三级国产a| 亚洲精品国产一区二区精华液| 夜色激情一区二区| 美女视频免费一区| 国产精品亚洲成人| 一本一道久久a久久精品 | 蜜臀av在线播放一区二区三区| 国产寡妇亲子伦一区二区| 91麻豆6部合集magnet| 91精品国产综合久久久久久| 国产欧美日韩中文久久| 香蕉乱码成人久久天堂爱免费| 国产麻豆精品一区二区| 欧美一a一片一级一片| 欧美国产一区二区在线观看| 亚洲最大的成人av| 国产不卡视频在线播放| 欧美欧美欧美欧美| 亚洲欧美日韩小说| 国产精品亚洲一区二区三区妖精| 欧美自拍偷拍午夜视频| 国产欧美精品一区二区色综合朱莉 | 亚洲人亚洲人成电影网站色| 精品午夜一区二区三区在线观看| 91福利区一区二区三区| 在线91免费看| 亚洲综合久久av| 91在线播放网址| 中文欧美字幕免费| 国产电影一区在线| 久久亚洲影视婷婷| 国产专区综合网| 久久亚洲欧美国产精品乐播| 人人精品人人爱| 日韩欧美一区中文| 亚洲五月六月丁香激情| 欧美日韩综合在线| 午夜电影网一区| 欧美成人三级在线| 国产精品白丝av| 欧美国产成人精品| 一本久道久久综合中文字幕| 亚洲人精品午夜|