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

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

?? hints.c

?? unix vnc 協議源碼. VNC是一款遠程控制工具軟件.
?? C
?? 第 1 頁 / 共 3 頁
字號:
/* $XConsortium: hints.c,v 1.4 91/10/10 11:18:13 rws Exp $ *//* Copyright International Business Machines, Corp. 1991 * All Rights Reserved * Copyright Lexmark International, Inc. 1991 * All Rights Reserved * * License to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, * provided that the above copyright notice appear in all copies and that * both that copyright notice and this permission notice appear in * supporting documentation, and that the name of IBM or Lexmark not be * used in advertising or publicity pertaining to distribution of the * software without specific, written prior permission. * * IBM AND LEXMARK PROVIDE THIS SOFTWARE "AS IS", WITHOUT ANY WARRANTIES OF * ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO ANY * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, * AND NONINFRINGEMENT OF THIRD PARTY RIGHTS.  THE ENTIRE RISK AS TO THE * QUALITY AND PERFORMANCE OF THE SOFTWARE, INCLUDING ANY DUTY TO SUPPORT * OR MAINTAIN, BELONGS TO THE LICENSEE.  SHOULD ANY PORTION OF THE * SOFTWARE PROVE DEFECTIVE, THE LICENSEE (NOT IBM OR LEXMARK) ASSUMES THE * ENTIRE COST OF ALL SERVICING, REPAIR AND CORRECTION.  IN NO EVENT SHALL * IBM OR LEXMARK BE LIABLE FOR ANY SPECIAL, 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. */ /* HINTS    CWEB         V0006 ********                             *//*:h1.HINTS Module - Processing Rasterization Hints &author. Sten F. Andler; continuity by Jeffrey B. Lotspiech (lotspiech@almaden.ibm.com) and DuaineW. Pryor, Jr.  :h3.Include Files The included files are:*/ #include "objects.h"#include "spaces.h"#include "paths.h"#include "regions.h"#include "hints.h" /*:h3.Functions Provided to the TYPE1IMAGER User None.*/ /*:h3.Functions Provided to Other Modules This module provides the following entry point to other modules:*/  /*SHARED LINE(S) ORIGINATED HERE*/ /*:h3.Macros Provided to Other Modules None.*/ /*:h2.InitHints() - Initialize hint data structure*/ #define MAXLABEL 20static struct {  int inuse;  int computed;  struct fractpoint hint;} oldHint[MAXLABEL]; #define ODD(x) (((int)(x)) & 01)#define FPFLOOR(fp) TOFRACTPEL((fp) >> FRACTBITS)#define FPROUND(fp) FPFLOOR((fp) + FPHALF) void InitHints(){  int i;   for (i = 0; i < MAXLABEL; i++)    {    oldHint[i].inuse    = FALSE;    oldHint[i].computed = FALSE;    }} /*:h3.CloseHints(hintP) - Reverse hints that are still open*/ void CloseHints(hintP)  struct fractpoint *hintP;{  int i;   for (i = 0; i < MAXLABEL; i++)    {    if (oldHint[i].inuse)      {      hintP->x -= oldHint[i].hint.x;      hintP->y -= oldHint[i].hint.y;       oldHint[i].inuse = FALSE;       IfTrace3((HintDebug > 1),"  Hint %d was open, hint=(%p,%p)\n",                i, hintP->x, hintP->y);      }    }} /*:h3.ComputeHint(hP, currX, currY, hintP) - Compute the value of a hint*/ static void ComputeHint(hP, currX, currY, hintP)  struct hintsegment *hP;  fractpel currX, currY;  struct fractpoint *hintP;{  fractpel currRef, currWidth;  int idealWidth;  fractpel hintValue;  char orientation; /*By construction, width is never zero.  Therefore we can use thewidth value to determine if the hint has been rotated by amultiple of 90 degrees.*/   if (hP->width.y == 0)    {    orientation = 'v';  /* vertical */    IfTrace0((HintDebug > 0),"  vertical hint\n");    }  else if (hP->width.x == 0)    {    orientation = 'h';  /* horizontal */    IfTrace0((HintDebug > 0),"  horizontal hint\n");    }  else    {    IfTrace0((HintDebug > 0),"  hint not vertical or horizontal\n");    hintP->x = hintP->y = 0;    return;    }   /* Compute currRef and currWidth with a unit of 1 pel */  if (orientation == 'v')      /* vertical */    {    currRef = hP->ref.x + currX;    currWidth = ABS(hP->width.x);    }  else if (orientation == 'h') /* horizontal */    {    currRef = hP->ref.y + currY;    currWidth = ABS(hP->width.y);    }  else                             /* error */    {    abort("ComputeHint: invalid orientation");    }   IfTrace4((HintDebug > 1),    "  currX=%p, currY=%p, currRef=%p, currWidth=%p\n",    currX, currY,    currRef, currWidth);   if ((hP->hinttype == 'b')      /* Bar or stem */    || (hP->hinttype == 's'))    /* Serif */    {    idealWidth = NEARESTPEL(currWidth);    if (idealWidth == 0) idealWidth = 1;    if (ODD(idealWidth))         /* Is ideal width odd? */      {      /* center "ref" over pel */      hintValue = FPFLOOR(currRef) + FPHALF - currRef;      }    else      {      /* align "ref" on pel boundary */      hintValue = FPROUND(currRef) - currRef;      }    if (HintDebug > 2) {          IfTrace1(TRUE,"  idealWidth=%d, ", idealWidth);      }    }  else if (hP->hinttype == 'c')  /* Curve extrema */    {    /* align "ref" on pel boundary */    hintValue = FPROUND(currRef) - currRef;    }  else                           /* error */    {    abort("ComputeHint: invalid hinttype");    }   IfTrace1((HintDebug > 1),"  hintValue=%p", hintValue);   if (orientation == 'v')      /* vertical */    {    hintP->x = hintValue;    hintP->y = 0;    }  else if (orientation == 'h') /* horizontal */    {    hintP->x = 0;    hintP->y = hintValue;    }  else                             /* error */    {    abort("ComputeHint: invalid orientation");    }} /*:h3.ProcessHint(hP, currX, currY, hintP) - Process a rasterization hint*/ void ProcessHint(hP, currX, currY, hintP)  struct hintsegment *hP;  fractpel currX, currY;  struct fractpoint *hintP;{  struct fractpoint thisHint;   IfTrace4((HintDebug > 1),"  ref=(%p,%p), width=(%p,%p)",      hP->ref.x, hP->ref.y,      hP->width.x, hP->width.y);  IfTrace4((HintDebug > 1),", %c %c %c %c",      hP->orientation, hP->hinttype,      hP->adjusttype, hP->direction);  IfTrace1((HintDebug > 1),", label=%d\n", hP->label);   if ((hP->adjusttype == 'm')      /* Move */    || (hP->adjusttype == 'a'))    /* Adjust */    {    /* Look up hint in oldHint table */    if ((hP->label >= 0) && (hP->label < MAXLABEL))      {      if (oldHint[hP->label].computed)        /* Use old hint value if already computed */        {        thisHint.x = oldHint[hP->label].hint.x;        thisHint.y = oldHint[hP->label].hint.y;        oldHint[hP->label].inuse    = TRUE;        }      else        /* Compute new value for hint and store it for future use */        {        ComputeHint(hP, currX, currY, &thisHint);         oldHint[hP->label].hint.x = thisHint.x;        oldHint[hP->label].hint.y = thisHint.y;        oldHint[hP->label].inuse    = TRUE;        oldHint[hP->label].computed = TRUE;        }      }    else                             /* error */      {      abort("ProcessHint: invalid label");      }    }  else if (hP->adjusttype == 'r')  /* Reverse */    {    /* Use the inverse of the existing hint value to reverse hint */    if ((hP->label >= 0) && (hP->label < MAXLABEL))      {      if (oldHint[hP->label].inuse)        {        thisHint.x = -oldHint[hP->label].hint.x;        thisHint.y = -oldHint[hP->label].hint.y;        oldHint[hP->label].inuse = FALSE;        }      else                           /* error */        {        abort("ProcessHint: label is not in use");        }      }    else                           /* error */      {      abort("ProcessHint: invalid label");      }     }  else                           /* error */    {    abort("ProcessHint: invalid adjusttype");    }  IfTrace3((HintDebug > 1),"  label=%d, thisHint=(%p,%p)\n",    hP->label, thisHint.x, thisHint.y);   hintP->x += thisHint.x;  hintP->y += thisHint.y;   IfTrace2((HintDebug > 1),"  hint=(%p,%p)\n",    hintP->x, hintP->y);} 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品久久久久香蕉网| 中文文精品字幕一区二区| 日韩欧美精品三级| 亚洲欧洲av一区二区三区久久| 亚洲午夜电影在线观看| 狠狠色丁香久久婷婷综合丁香| 91毛片在线观看| 久久综合久久综合亚洲| 精品综合免费视频观看| 国产成人aaaa| 日韩一级精品视频在线观看| 亚洲精品视频免费看| 国产成人福利片| 日韩一区二区麻豆国产| 亚洲小说春色综合另类电影| 成人免费视频视频| 精品国产91久久久久久久妲己| 亚洲一区二区三区四区不卡| 99久久精品免费观看| 国产亚洲婷婷免费| 国产制服丝袜一区| 日韩欧美另类在线| 日韩高清国产一区在线| 欧美色倩网站大全免费| 亚洲女子a中天字幕| 风间由美中文字幕在线看视频国产欧美| 欧美精品久久一区二区三区 | 波多野结衣亚洲一区| 欧美一卡二卡在线| 午夜伊人狠狠久久| 色噜噜夜夜夜综合网| 国产精品理论片| 成人av在线资源网站| 中文字幕欧美国产| 99这里只有久久精品视频| 日本一区二区三区电影| 成人精品电影在线观看| 国产精品污网站| 国产不卡视频在线观看| 国产精品久久久久久久裸模| 欧美一二三区精品| 午夜av一区二区| 欧美日韩一区视频| 日韩av在线播放中文字幕| 欧美日韩一区二区在线观看视频| 亚洲在线中文字幕| 欧美视频一区二区三区| 天天亚洲美女在线视频| 欧美日韩大陆在线| 久久爱www久久做| 亚洲精品在线三区| 国产99精品视频| 国产精品不卡在线| 日本韩国一区二区三区视频| 夜夜亚洲天天久久| 欧美精品黑人性xxxx| 麻豆精品视频在线观看| 久久久久久电影| 99精品久久免费看蜜臀剧情介绍| 亚洲伦理在线精品| 欧美日本精品一区二区三区| 国产精品丝袜一区| 91无套直看片红桃| 日韩国产欧美一区二区三区| 精品国产电影一区二区| bt欧美亚洲午夜电影天堂| 亚洲一区二区影院| 欧美一区二区视频在线观看2022| 国内精品久久久久影院一蜜桃| 国产日韩欧美麻豆| 久久午夜色播影院免费高清| 国产91在线|亚洲| 亚洲麻豆国产自偷在线| 欧美一级日韩一级| 免费成人在线观看视频| 国产精品久久久一区麻豆最新章节| 91麻豆6部合集magnet| 天堂一区二区在线免费观看| 国产亲近乱来精品视频| 欧美精品少妇一区二区三区| 国产高清成人在线| 天堂一区二区在线| 亚洲视频免费看| 精品成人一区二区三区| 欧美日韩免费视频| 成人午夜在线视频| 久久99九九99精品| 一二三四区精品视频| 亚洲精品一区二区三区香蕉| 欧美亚洲一区三区| 成人妖精视频yjsp地址| 久久精品国产色蜜蜜麻豆| 亚洲综合色成人| 国产精品天天看| 精品欧美一区二区久久| 欧美在线一区二区三区| 成人一区在线观看| 麻豆高清免费国产一区| 亚洲高清在线精品| 中文字幕日韩一区| 久久久99久久| 日韩欧美国产综合一区| 欧美日韩国产欧美日美国产精品| 99精品欧美一区二区三区综合在线| 精品午夜一区二区三区在线观看| 天天综合网 天天综合色| 自拍偷拍亚洲综合| 中文一区一区三区高中清不卡| 日韩一级免费观看| 日韩一区二区三区高清免费看看| 一本久道久久综合中文字幕| 成人黄色大片在线观看| 丁香天五香天堂综合| 国产成人无遮挡在线视频| 国内精品不卡在线| 蜜臀av一级做a爰片久久| 青青草97国产精品免费观看| 日韩精品亚洲专区| 日本不卡在线视频| 日欧美一区二区| 奇米影视在线99精品| 蜜桃91丨九色丨蝌蚪91桃色| 日本vs亚洲vs韩国一区三区二区| 日韩高清不卡一区二区三区| 免费在线视频一区| 久久99国产精品麻豆| 久久草av在线| 精品一区二区三区在线播放视频 | 一本大道久久a久久综合| 99久久99久久精品免费观看| 91在线看国产| 欧洲av在线精品| 欧美日韩在线播放| 欧美一级片在线| 久久久99久久| 亚洲精品菠萝久久久久久久| 香蕉成人啪国产精品视频综合网| 亚洲风情在线资源站| 另类人妖一区二区av| 国产精品一级在线| kk眼镜猥琐国模调教系列一区二区| 99精品久久只有精品| 欧美日韩一区二区在线观看| 精品日韩在线观看| 美女视频黄久久| 国产在线精品一区二区三区不卡| 国产成人aaa| 欧美专区亚洲专区| 欧美成人r级一区二区三区| 国产精品麻豆欧美日韩ww| 亚洲一区二区三区四区在线免费观看| 日日夜夜免费精品视频| 国产不卡免费视频| 在线观看av一区二区| 日韩欧美一级二级三级| 国产精品伦一区| 午夜一区二区三区视频| 国产成人午夜视频| 欧美日韩国产影片| 中文字幕一区二区三区不卡在线| 天使萌一区二区三区免费观看| 国产精品一品二品| 欧美日韩中字一区| 国产精品天干天干在线综合| 性久久久久久久久久久久| 成人少妇影院yyyy| 日韩一区二区视频| 一区二区三区精品| 成人中文字幕合集| 精品久久久久一区二区国产| 一区二区三区欧美久久| 国产一区视频网站| 欧美一级理论性理论a| 亚洲女人小视频在线观看| 精品中文字幕一区二区| 欧美日韩国产综合视频在线观看| 日本一区二区高清| 久久精品国产一区二区| 欧美午夜不卡在线观看免费| 中文字幕日韩av资源站| 国产乱国产乱300精品| 欧美欧美欧美欧美首页| 亚洲人成网站色在线观看| 高清不卡在线观看av| 欧美一区午夜视频在线观看| 亚洲精品成a人| 91丨九色丨蝌蚪富婆spa| 国产亚洲精品7777| 国产一区在线观看麻豆| wwwwww.欧美系列| 麻豆精品视频在线观看| 日韩一级高清毛片| 丝袜亚洲另类欧美| 在线不卡欧美精品一区二区三区| 亚洲日本va午夜在线影院| fc2成人免费人成在线观看播放| 国产亚洲女人久久久久毛片| 精品无人码麻豆乱码1区2区| 欧美一区二区三区四区视频| 五月天欧美精品|