bringover [Cedar]Top>ImagerViewer.df bringover [Cedar]Top>AIS.df bringover [Cedar]Top>Interpress.df bringover /ivy/lamming/top/PixelmapFuns.df copy ///fonts/xerox/xc1-1-1-0/ITCBauhausMRRc0.sd _ /cyan/imaging/fonts/ITCBauhausMRRc0.sd copy ///fonts/xerox/xc1-1-1-0/ITCBauhausBRRc0.sd _ /cyan/imaging/fonts/ITCBauhausBRRc0.sd copy ///fonts/xerox/xc1-1-1-0/ITCBerkeleyMRRc0.sd _ /cyan/imaging/fonts/ITCBerkeleyMRRc0.sd copy ///fonts/xerox/xc1-1-1-0/ITCBerkeleyBRRc0.sd _ /cyan/imaging/fonts/ITCBerkeleyBRRc0.sd copy ///fonts/xerox/xc1-1-1-0/ITCBerkeleyMIRc0.sd _ /cyan/imaging/fonts/ITCBerkeleyMIRc0.sd copy ///fonts/xerox/xc1-1-1-0/FlemishScriptIIMRRc0.sd _ /cyan/imaging/fonts/FlemishScriptIIMRRc0.sd colordisplay 8 on run aisimpl run pixelmapopsimpl run ImagerFunctionDeviceImpl run ImagerAlpha4DeviceImpl run ImagerViewerimpl run InterpressPackage run PixelMapFunsImpl _ &sSize _ 800 _ &fSize _ 800 _ &scale _ &sSize / 500.0; _ &vc _ ImagerViewer.Create[[name:"vc", column:color, iconic:FALSE], pixels] _ ImagerViewer.Clear[&vc] _ &aisStem _ "BirdletCut" _ &aisRed _ Rope.Cat[&aisStem, "-red.ais"]; _ &aisGrn _ Rope.Cat[&aisStem, "-grn.ais"]; _ &aisBlu _ Rope.Cat[&aisStem, "-blu.ais"]; _ &aisARed _ Rope.Cat[&aisStem, "-Ared.ais"]; _ &aisAGrn _ Rope.Cat[&aisStem, "-Agrn.ais"]; _ &aisABlu _ Rope.Cat[&aisStem, "-Ablu.ais"]; _ &aisAlpha _ Rope.Cat[&aisStem, "-alpha.ais"]; _ &bgStem _ "Driplet" _ &bgRed _ Rope.Cat[&bgStem, "-red.ais"]; _ &bgGrn _ Rope.Cat[&bgStem, "-grn.ais"]; _ &bgBlu _ Rope.Cat[&bgStem, "-blu.ais"]; _ &bgARed _ Rope.Cat[&bgStem, "-Ared.ais"]; _ &bgAGrn _ Rope.Cat[&bgStem, "-Agrn.ais"]; _ &bgABlu _ Rope.Cat[&bgStem, "-Ablu.ais"]; _ &bgAlpha _ Rope.Cat[&bgStem, "-alpha.ais"]; _ &temp _ PixelMapFunsImpl.LoadAIS[&bgRed]; _ &bgH _ &temp.sSize _ &bgW _ &temp.fSize _ &temp.refRep.ref _ NIL; _ PixelMapFunsImpl.StoreAIS[PixelMapFunsImpl.Ellipse[&bgH, &bgW, 255, 0, 0.4, 0.85], &bgAlpha] _ ImagerAlpha4DeviceImpl.PremultiplyAIS[&bgRed, &bgGrn, &bgBlu, &bgAlpha, &bgARed, &bgAGrn, &bgABlu] _ &temp _ PixelMapFunsImpl.LoadAIS[&aisRed]; _ &aisH _ &temp.sSize _ &aisW _ &temp.fSize _ &temp.refRep.ref _ NIL; _ ImagerAlpha4DeviceImpl.PremultiplyAIS[&aisRed, &aisGrn, &aisBlu, &aisAlpha, &aisARed, &aisAGrn, &aisABlu] _ &pa _ ImagerAlpha4Device.MakePixelArrayFromAIS[&bgARed, &bgAGrn, &bgABlu, &bgAlpha]; _ &pb _ ImagerAlpha4Device.MakePixelArrayFromAIS[&aisARed, &aisAGrn, &aisABlu, &aisAlpha]; _ &pms _ ImagerFunctionDeviceImpl.MakePMS[4,&fSize,&sSize] _ &c _ ImagerAlpha4Device.Create[&pms, ImagerFunctionDeviceImpl.LikeScreen[&sSize], 1] _ &fontH _ 120 * &scale _ &f _ ImagerFont.Scale[ImagerFont.Find["Xerox/xc1-1-1-0/FlemishScriptIIMRRc0"], &fontH] _ Imager.SetFont[&c, &f]; _ &top _ &sSize-&fontH/3 _ &left _ 30 * &scale _ Imager.SetColor[&c, ImagerAlpha4Device.MakeConstantColor[ImagerColor.ColorFromRGB[[0.5,0.6,1],NIL], 1]] _ Imager.MaskRectangle[&c, [0,0,&fSize,&sSize]] _ Imager.SetSampledColor[&c, &pa, ImagerTransformation.Scale[RealOps.Float[&fSize]/&bgW], NIL] _ Imager.MaskRectangle[&c, [0,0,&fSize,&sSize]] _ Imager.TranslateT[&c, [10*&scale, -20*&scale]]; _ Imager.SetColor[&c, ImagerAlpha4Device.MakeConstantColor[ImagerColor.ColorFromRGB[[0,0,0],NIL], 0.25]] _ Imager.SetXY[&c, [&left+(110 * &scale), &top-&fontH]] _ Imager.ShowRope[&c, "Real"]; _ Imager.SetXY[&c, [&left+(60 * &scale), &top-&fontH*2]] _ Imager.ShowRope[&c, "shadows?"]; _ Imager.TranslateT[&c, [-10*&scale, 10*&scale]]; _ Imager.SetColor[&c, ImagerAlpha4Device.MakeConstantColor[ImagerColor.ColorFromRGB[[1,0,0],NIL], 1]] _ Imager.SetXY[&c, [&left+(110 * &scale), &top-&fontH]] _ Imager.ShowRope[&c, "Real"]; _ Imager.SetXY[&c, [&left+(60 * &scale), &top-&fontH*2]] _ Imager.ShowRope[&c, "shadows?"]; _ Imager.ScaleT[&c, 0.3]; _ Imager.TranslateT[&c, [&aisW*2, &aisH*2]]; _ Imager.SetSampledColor[&c, &pb, ImagerTransformation.Scale[RealOps.Float[&fSize]/&aisW], NIL] _ Imager.MaskRectangle[&c, [0,0,&fSize,&sSize]] _ &pa2 _ ImagerOps.PixelArrayFromPixelMaps[&pms, ImagerTransformation.Invert[m: ImagerFunctionDeviceImpl.LikeScreen[&sSize]]] _ Imager.SetSampledColor[&vc, &pa2, NIL, ImagerColorOperator.RGBLinearColorModel[255]] _ Imager.MaskRectangle[&vc, [0,0,&fSize,&sSize]] _ &ipf _ ImagerInterpress.Create["Transparent.ip"]; _ &ipc _ ImagerInterpressBackdoor.GetContext[&ipf]; _ Imager.ScaleT[&ipc, 0.00035277778] _ &pa2 _ ImagerOps.PixelArrayFromPixelMaps[&pms, ImagerTransformation.Invert[m: ImagerFunctionDeviceImpl.LikeScreen[&sSize]]] _ Imager.SetSampledColor[&ipc, &pa2, NIL, ImagerColorOperator.RGBLinearColorModel[255]] _ Imager.MaskRectangle[&ipc, [0,0,&fSize,&sSize]] _ ImagerInterpressBackdoor.NewPage[&ipf, &ipc, TRUE]; _ ImagerInterpress.Close[&ipf] InterpressToPD transparent.pd _transparent.ip color400 _ PixelMapFunsImpl.StoreAIS[&pms.first, "GirlAndBird-red.ais"] _ PixelMapFunsImpl.StoreAIS[&pms.rest.first, "GirlAndBird-grn.ais"] _ PixelMapFunsImpl.StoreAIS[&pms.rest.rest.first, "GirlAndBird-blu.ais"] š-- ImagerFunctionDeviceTest.cm -- Mik Lamming - October 7, 1985 11:35:12 am PDT Last edited by: Mik Lamming - November 1, 1985 1:27:46 pm PST -- calculate a vignette for an alpha channel -- normalise the ais files for the alpha channel -- make a pixel array from the color -- create the alpha device -- set up font -- _ &f _ ImagerFont.Scale[ImagerFont.Find["Xerox/PressFonts/TimesRoman-MRR"], &fontH] Κ˜J™™0Icode™=—J™Jšœ3˜3Jšœ*˜*Jšœ1˜1J˜*J˜JšœY˜YJšœY˜YJšœ[˜[Jšœ[˜[Jšœ[˜[Jšœc˜cJ˜J˜J˜ Jšœ˜Jšœ˜J˜Jšœ˜J˜J˜J˜J˜J˜J˜J˜Jšœ=Οkœ ˜LJšœ˜J˜Jšœ˜Jšœ+˜+Jšœ+˜+Jšœ+˜+Jšœ-˜-Jšœ-˜-Jšœ-˜-J˜Jšœ/˜/J˜Jšœ˜Jšœ)˜)Jšœ)˜)Jšœ)˜)Jšœ+˜+Jšœ+˜+Jšœ+˜+J˜Jšœ-˜-J˜J˜J™,Jšœ,˜,Jšœ˜Jšœ˜Jšœœ˜Jšœ^˜^Jšœd˜dJ˜Jšœ-˜-Jšœ˜Jšœ˜Jšœœ˜J™0Jšœk˜kJ˜J™$JšœV˜VJšœZ˜ZJ˜J™Jšœ:˜:Jšœ?œ˜VJ˜Jšœ™J˜JšœX˜XJ™VJšœ˜J˜J˜J˜Jšœ`œ˜jJšœ/˜/Jšœ_˜_Jšœ/˜/J˜J˜1Jšœ\œ ˜iJ˜7Jšœ˜J˜8Jšœ"˜"J˜1J˜Jšœ\œ˜fJ˜7Jšœ˜J˜8Jšœ"˜"J˜Jšœ˜Jšœ,˜,Jšœ`˜`Jšœ/˜/J˜J˜J˜J•StartOfExpansion*[m: ImagerTransformation.Transformation]šœhœ˜}Jšœ$œ0˜WJšœ0˜0J˜J˜3Jšœ3˜3Jšœ$˜$J–*[m: ImagerTransformation.Transformation]šœhœ˜}Jšœ%œ0˜XJšœ1˜1Jšœ/œ˜5Jšœ˜J˜Jšœ7˜7J˜Jšœ>˜>JšœC˜CJšœH˜HJ˜J˜J˜J˜J˜J˜J˜—…—˜±