Difference between revisions of "CSS Support"

From Inkscape Wiki
Jump to navigation Jump to search
m (despam)
 
(17 intermediate revisions by 5 users not shown)
Line 1: Line 1:
=== Hack: Convert to style-less SVG ===
 
A short-term solution (hack) for style support would be an input filter that converts stylesheet-using documents to non-stylesheet-using documents.  cssanno.c (http://lists.w3.org/Archives/Public/www-archive/2004Jun/att-0001/cssanno.c or see google) does most of the work for this (for a generic XML document); the remainder of the work is to feed it a stylesheet by parsing the SVG document looking for <tt>&lt;style&gt;</tt> elements and fetching external stylesheets, and to change the outputted namespace from css: to svg:.
 
  
[ http://www.faithdot.com/web-hosting-company--free-web-hosting-company/ free web hosting company ]  http://www.faithdot.com/ [ http://www.slidersweb.com/grants--grants-pass/ grants pass ][ http://www.moronclub.org/paris-hotel-las-vegas--hotel-las-paris-review-vegas/ hotel las paris review vegas ][ http://www.slidersweb.com/house-design--house-window-design/ house window design ][ http://www.joyplace.info/high-speed-internet--high-speed-internet-montreal/ high speed internet montreal ][ http://www.thisgreat.com/internet-home-business--free-home-internet-business-opportunity/ free home internet business opportunity ][ http://www.faithdot.com/apartment-for-rent--apartment-for-rent-phoenix/ apartment for rent phoenix ][ http://www.moronclub.org/direct-tv-satellite--direct-tv-satellite-tv/ direct tv satellite tv ][ http://www.faithdot.com/phentermine-online-order--order-phentermine-online/ order phentermine online ][ http://www.faithdot.com/online-marketing--internet-marketing-plan/ internet marketing plan ][ http://www.joyplace.info/crm-solution--crm-insurance-solution/ crm insurance solution ][ http://www.faithdot.com/counseling-degree-online--school-counseling-degree-online/ school counseling degree online ][ http://www.slidersweb.com/home-equity-loans--loan-mortgage-home-equity-real-estate/ loan mortgage home equity real estate ][ http://www.slidersweb.com/free-personal-ad--free-personal-ads-site/ free personal ads site ][ http://www.slidersweb.com/no-faxing-payday-loans--1000-faxing-loan-no-payday/ 1000 faxing loan no payday ][ http://www.slidersweb.com/personal-online-loan--loan-online-personal-secured/ loan online personal secured ][ http://www.faithdot.com/incorporate--incorporate-online/ incorporate online ][ http://www.moronclub.org/tents--ozark-trail-tent/ ozark trail tent ][ http://www.thisgreat.com/work-at-home-opportunity--home-investment-no-opportunity-work/ home investment no opportunity work ][ http://www.faithdot.com/personal-debt-consolidation-loan--unsecured-personal-loan-for-debt-consolidation/ unsecured personal loan for debt consolidation ][ http://www.joyplace.info/free-blackjack--black-casino-free-gaming-jack-play/ black casino free gaming jack play ][ http://www.faithdot.com/sportsbook--bodog-sport-book/ bodog sport book ][ http://www.thisgreat.com/mp3-software--rio-mp3-player-software/ rio mp3 player software ][ http://www.joyplace.info/cheap-ticket--cheap-detroit-lion-ticket/ cheap detroit lion ticket ][ http://www.thisgreat.com/massage-schools--louisville-school-of-massage/ louisville school of massage ][ http://www.thisgreat.com/job--job-bank/ job bank ][ http://www.faithdot.com/knee-brace--magnetic-knee-brace/ magnetic knee brace ][ http://www.moronclub.org/audio-conferencing--audio-bridge-conferencing/ audio bridge conferencing ][ http://www.faithdot.com/bourse--bourse-de-l-immobilier/ bourse de l immobilier ][ http://www.thisgreat.com/property-for-sale-costa-blanca--property-for-sale-in-costa-blanca-spain/ property for sale in costa blanca spain ][ http://www.moronclub.org/health-insurance-california--california-group-health-insurance-resource/ california group health insurance resource ][ http://www.faithdot.com/used-car-loans--delaware-used-car-loan/ delaware used car loan ][ http://www.slidersweb.com/prescription-medication--cough-medication-prescription/ cough medication prescription ][ http://www.faithdot.com/replacement-window--window-sash-replacement-kit/ window sash replacement kit ][ http://www.moronclub.org/online-training--quickbooks-online-training/ quickbooks online training ][ http://www.joyplace.info/las-vegas-motels--las-motel-vegas-weekly/ las motel vegas weekly ][ http://www.slidersweb.com/WWE--wwe-triple-h/ wwe triple h ][ http://www.complexweb.org/cable-internet--armstrong-cable-internet/ armstrong cable internet ][ http://www.faithdot.com/mortgage-calculator--adjustable-rate-mortgage-calculator/ adjustable rate mortgage calculator ][ http://www.thisgreat.com/my-credit-report--free-on-line-credit-report/ free on line credit report ][ http://www.moronclub.org/internet-service--indiana-internet-service-provider/ indiana internet service provider ][ http://www.moronclub.org/education-training--education-florida-realtor-training-weston/ education florida realtor training weston ][ http://www.slidersweb.com/oakley--oakley-football/ oakley football ][ http://www.thisgreat.com/affiliate-programs--business-opportunity-affiliate-program/ business opportunity affiliate program ][ http://www.complexweb.org/air-travel--air-travel-during-pregnancy/ air travel during pregnancy ][ http://www.slidersweb.com/best-credit-card--best-card-credit-find/ best card credit find ][ http://www.thisgreat.com/business-degrees--advanced-business-degree-online/ advanced business degree online ][ http://www.moronclub.org/video-projector--church-video-projector/ church video projector ][ http://www.thisgreat.com/online-poker-games--online-and-poker-and-game-and-for-and-fun/ online and poker and game and for and fun ][ http://www.joyplace.info/golden-palace-casino--golden-palace-casino-200-free/ golden palace casino 200 free ][ http://www.slidersweb.com/hydrocodone-without-prescription--hydrocodone-prescription-purchase-without/ hydrocodone prescription purchase without ][ http://www.moronclub.org/loan-payment-calculator--home-loan-payment-calculator/ home loan payment calculator ][ http://www.slidersweb.com/buy-soma-online--buy-carisoprodol-diazepam-online-soma/ buy carisoprodol diazepam online soma ][ http://www.moronclub.org/e-loan--e-loan-inc/ e loan inc ][ http://www.slidersweb.com/gambling--football-gambling/ football gambling ][ http://www.thisgreat.com/tax--business-tax/ business tax ][ http://www.joyplace.info/vig-rx--does-rx-vig-work/ does rx vig work ][ http://www.slidersweb.com/computer-help--computer-programming-help/ computer programming help ][ http://www.slidersweb.com/photo-stock-library--stock-photo-library/ stock photo library ][ http://www.faithdot.com/betting-online--online-gambling-betting/ online gambling betting ][ http://www.moronclub.org/bridal-jewelry--beaded-bridal-jewelry/ beaded bridal jewelry ][ http://www.joyplace.info/mexican-phentermine--phentermine-mexican-pharmacy/ phentermine mexican pharmacy ][ http://www.faithdot.com/ferry-crossings--ferry-crossing/ ferry crossing ][ http://www.thisgreat.com/online-casinos-no-download--casino-online-no-download/ casino online no download ][ http://www.slidersweb.com/dates--the-notebook-dvd-release-date/ the notebook dvd release date ][ http://www.joyplace.info/business-card-design--business-card-creative-design/ business card creative design ][ http://www.complexweb.org/what-is-norco--norco-bike/ norco bike ][ http://www.complexweb.org/home-entertainment--store-home-entertainment/ store home entertainment ][ http://www.joyplace.info/airline-ticket--airline-ticket-9-9-9-9/ airline ticket 9 9 9 9 ][ http://www.slidersweb.com/online-dating-service--cgi-dating-online-script-service/ cgi dating online script service ][ http://www.thisgreat.com/adware--free-spyware-or-adware-remove/ free spyware or adware remove ][ http://www.moronclub.org/workout--baseball-workout/ baseball workout ][ http://www.slidersweb.com/eating-disorders--eating-disorder-recovery/ eating disorder recovery ][ http://www.moronclub.org/cheap-domain-name--cheap-domain-name-registry/ cheap domain name registry ][ http://www.complexweb.org/pharmacy-in-canada--canada-college-in-pharmacy/ canada college in pharmacy ][ http://www.slidersweb.com/discount-checks--discount-check/ discount check ][ http://www.slidersweb.com/call-centers--call-center-headset/ call center headset ][ http://www.thisgreat.com/gift-idea--gift-idea-for-man/ gift idea for man ][ http://www.moronclub.org/vicodin-es--buy-es-vicodin/ buy es vicodin ][ http://www.joyplace.info/advance-payday-loans--payday-advance-loan-illinois/ payday advance loan illinois ][ http://www.slidersweb.com/cash-in-advance-loan--advance-cash-faxing-loan-no-payday/ advance cash faxing loan no payday ]  http://www.moronclub.org/ [ http://www.joyplace.info/hotels-hawaii--hotel-in-kauai-hawaii/ hotel in kauai hawaii ][ http://www.joyplace.info/online-college--college-math-online/ college math online ][ http://www.thisgreat.com/cigars--cigar-cases/ cigar cases ][ http://www.complexweb.org/norvasc--norvasc-side-effects/ norvasc side effects ][ http://www.faithdot.com/internet-business-opportunity--business-income-internet-online-opportunity-residual/ business income internet online opportunity residual ][ http://www.slidersweb.com/personal-loans-uk--9-9-9-9-instant-loan-personal-uk/ 9 9 9 9 instant loan personal uk ][ http://www.complexweb.org/epson-printer-cartridge--cartridge-epson-ink-jet-printer-purchase/ cartridge epson ink jet printer purchase ][ http://www.complexweb.org/cooking-school--aspen-school-of-cooking/ aspen school of cooking ][ http://www.moronclub.org/conveyors--stainless-steel-conveyor/ stainless steel conveyor ][ http://www.moronclub.org/university--university-of-california/ university of california ][ http://www.joyplace.info/on-line-education--adult-education-line/ adult education line ][ http://www.moronclub.org/bedroom-furniture--tropical-bedroom-furniture/ tropical bedroom furniture ][ http://www.complexweb.org/affiliate-program--christian-affiliate-program/ christian affiliate program ][ http://www.faithdot.com/spyware--spyware-virus/ spyware virus ][ http://www.thisgreat.com/bathroom-accessories--ceramic-bathroom-accessory/ ceramic bathroom accessory ][ http://www.thisgreat.com/california-health-insurance-quote--california-life-and-health-insurance-quote/ california life and health insurance quote ][ http://www.faithdot.com/orange--agent-orange/ agent orange ][ http://www.faithdot.com/mortgage-lender--mortgage-lender-orange-county/ mortgage lender orange county ][ http://www.thisgreat.com/home-loan-improvement--home-improvement-loan-rate/ home improvement loan rate ][ http://www.moronclub.org/home-based-internet-business--best-home-based-internet-business/ best home based internet business ][ http://www.thisgreat.com/printer-cartridge--brother-inkjet-printer-cartridge/ brother inkjet printer cartridge ][ http://www.moronclub.org/lortab-to-buy-on-line--buy-lortab-on-line/ buy lortab on line ][ http://www.moronclub.org/tech-school--echo-school-tech/ echo school tech ][ http://www.thisgreat.com/accommodation-in-barcelona--budget-accommodation-barcelona/ budget accommodation barcelona ][ http://www.joyplace.info/new-york-city-hotels--metro-hotel-new-york-city/ metro hotel new york city ][ http://www.slidersweb.com/hair-loss--natural-hair-loss-treatment/ natural hair loss treatment ][ http://www.moronclub.org/mouse-pad--tigger-mouse-pad/ tigger mouse pad ][ http://www.joyplace.info/loan-calculator--student-loan-repayment-calculator/ student loan repayment calculator ][ http://www.complexweb.org/football-picks--football-pick-sheet/ football pick sheet ][ http://www.joyplace.info/student-loan--student-loan-com/ student loan com ][ http://www.faithdot.com/auto-insurance-rates--lowest-auto-insurance-rate/ lowest auto insurance rate ][ http://www.slidersweb.com/financial-investments--financial-network-investment-corp/ financial network investment corp ][ http://www.thisgreat.com/cellular-phone-accessories--kyocera-cellular-phone-accessory/ kyocera cellular phone accessory ][ http://www.faithdot.com/florida-holidays--card-florida-holiday/ card florida holiday ][ http://www.thisgreat.com/buy-vicodin-online--buy-cheap-vicodin-online/ buy cheap vicodin online ][ http://www.thisgreat.com/business-intelligence--business-intelligence-home-page/ business intelligence home page ][ http://www.slidersweb.com/ceiling-fans--ceiling-fan-company/ ceiling fan company ][ http://www.complexweb.org/short-term-loans--short-term-construction-loan/ short term construction loan ][ http://www.complexweb.org/flonase--flonase-side-affect/ flonase side affect ][ http://www.thisgreat.com/debt-consolidation-loans--fast-debt-consolidation-loan/ fast debt consolidation loan ][ http://www.faithdot.com/jewelery--hematite-jewelry/ hematite jewelry ][ http://www.slidersweb.com/technical-schools--sussex-technical-high-school/ sussex technical high school ][ http://www.slidersweb.com/laptop-computer--notebook-computer-accessory/ notebook computer accessory ][ http://www.complexweb.org/laminate-floors--floor-laminate-repairing/ floor laminate repairing ][ http://www.thisgreat.com/mexican-pharmacy--in-mexican-pharmacy-provigil/ in mexican pharmacy provigil ][ http://www.slidersweb.com/denver-real-estate--denver-estate-keller-real-williams/ denver estate keller real williams ][ http://www.joyplace.info/casino-chip--poker-casino-chips-for-sale/ poker casino chips for sale ][ http://www.complexweb.org/erectile-dysfunction--erectile-dysfunction-product/ erectile dysfunction product ][ http://www.faithdot.com/cheap-mortgage-uk--cheap-mortgage-payment-protection-uk/ cheap mortgage payment protection uk ][ http://www.thisgreat.com/how-to-lose-weight--easy-weight-loss/ easy weight loss ][ http://www.thisgreat.com/the-university-of-phoenix--university-of-phoenix-online-student/ university of phoenix online student ][ http://www.faithdot.com/royal-caribbean-cruises--discount-royal-caribbean-cruises/ discount royal caribbean cruises ][ http://www.slidersweb.com/flowers-to-send--send-discount-flower/ send discount flower ][ http://www.moronclub.org/rugs--fur-rug/ fur rug ][ http://www.moronclub.org/direct-loan--direct-loan-account/ direct loan account ][ http://www.slidersweb.com/id-badge--badge-card-coded-id/ badge card coded id ][ http://www.moronclub.org/energy--solar-energy/ solar energy ][ http://www.complexweb.org/monte-carlo--monte-carlo-hotel-vegas/ monte carlo hotel vegas ][ http://www.faithdot.com/samsung--samsung-idcs500/ samsung idcs500 ][ http://www.joyplace.info/hydrocodone-order--how-to-order-hydrocodone-cod/ how to order hydrocodone cod ][ http://www.moronclub.org/spam-killer--irc-killer-spam/ irc killer spam ][ http://www.joyplace.info/auto-dealers--phoenix-auto-dealer/ phoenix auto dealer ][ http://www.complexweb.org/tramadol--buy-tramadol/ buy tramadol ][ http://www.complexweb.org/patent-search--patent-search-engine/ patent search engine ][ http://www.moronclub.org/toshiba-laptops--toshiba-laptop/ toshiba laptop ][ http://www.thisgreat.com/stock-market--stock-market-tip/ stock market tip ][ http://www.thisgreat.com/xanax--how-long-does-xanax-stay-in-your-system/ how long does xanax stay in your system ][ http://www.slidersweb.com/legal--legal-music-download/ legal music download ][ http://www.complexweb.org/industrial-supply--industrial-nashville-supply/ industrial nashville supply ][ http://www.moronclub.org/pay-day-loans--day-georgia-in-loan-pay/ day georgia in loan pay ][ http://www.joyplace.info/online-business-degree--business-degree-design-online/ business degree design online ][ http://www.faithdot.com/new-balance--man-new-balance-shoes/ man new balance shoes ][ http://www.thisgreat.com/xanax-online-pharmacy--canadian-online-pharmacy-xanax/ canadian online pharmacy xanax ][ http://www.moronclub.org/fast-cash-payday-loan--cash-fast-loan-online-payday/ cash fast loan online payday ][ http://www.complexweb.org/waterford-crystal--discount-waterford-crystal/ discount waterford crystal ][ http://www.joyplace.info/debt-consolidation-bad-credit--bad-consolidation-credit-debt-xxasdf/ bad consolidation credit debt xxasdf ][ http://www.moronclub.org/casino-download--free-download-hoyle-casino/ free download hoyle casino ][ http://www.slidersweb.com/phd-distance-learning--accredited-distance-learning-phd-program/ accredited distance learning phd program ][ http://www.thisgreat.com/online-roulette--casino-online-recommended-roulette/ casino online recommended roulette ][ http://www.faithdot.com/phoenix-university-online--university-of-phoenix-online-mba/ university of phoenix online mba ]  http://www.thisgreat.com/ [ http://www.joyplace.info/tempurpedic--celebrity-mattress-tempurpedic/ celebrity mattress tempurpedic ][ http://www.thisgreat.com/ppp-healthcare--axa-ppp-health-care/ axa ppp health care ][ http://www.slidersweb.com/payment-processing--payment-processing-transaction/ payment processing transaction ][ http://www.complexweb.org/singles--air-carbon-filter/ air carbon filter ][ http://www.slidersweb.com/business-software--small-business-tax-software/ small business tax software ][ http://www.joyplace.info/government-grants--free-government-grants/ free government grants ][ http://www.faithdot.com/gourmet-coffee--gourmet-coffee-club/ gourmet coffee club ][ http://www.thisgreat.com/shaving--female-shaving/ female shaving ][ http://www.complexweb.org/website--web-site-development/ web site development ][ http://www.joyplace.info/instant-personal-loan--9-9-9-9-instant-loan-personal/ 9 9 9 9 instant loan personal ][ http://www.joyplace.info/electronic-dog-collars--electronic-dog-collar/ electronic dog collar ][ http://www.slidersweb.com/buy-cheap-fioricet--buy-cheap-fioricet-online/ buy cheap fioricet online ][ http://www.moronclub.org/art-schools--colorado-art-schools/ colorado art schools ][ http://www.thisgreat.com/health-insurance-ohio--columbus-health-insurance-ohio/ columbus health insurance ohio ][ http://www.faithdot.com/credit-report--consumer-credit-report/ consumer credit report ][ http://www.joyplace.info/scanners--free-scanner-frequency/ free scanner frequency ][ http://www.joyplace.info/coffee--coffee-house-san-francisco/ coffee house san francisco ][ http://www.slidersweb.com/homes--home-improvement-remodeling/ home improvement remodeling ][ http://www.slidersweb.com/medical-insurance--medical-insurance-about-us/ medical insurance about us ][ http://www.complexweb.org/gambling-internet--gambling-high-internet-new-stakes/ gambling high internet new stakes ][ http://www.complexweb.org/personal-protection--personal-protection-product/ personal protection product ][ http://www.moronclub.org/alaskan-cruises--alaska-cruises-from-seattle/ alaska cruises from seattle ][ http://www.faithdot.com/rug--baby-rug/ baby rug ][ http://www.moronclub.org/herpes--herpes-chat/ herpes chat ][ http://www.joyplace.info/mcse-training--mcse-training-course/ mcse training course ][ http://www.thisgreat.com/vehicle-tracking--gprs-vehicle-tracking/ gprs vehicle tracking ][ http://www.slidersweb.com/grandfather-clocks--clock-grandfather-plan-wood-working/ clock grandfather plan wood working ][ http://www.slidersweb.com/first-aid-kit--wholesale-first-aid-kit/ wholesale first aid kit ][ http://www.faithdot.com/refinancing-mortgage--best-loan-mortgage-refinance/ best loan mortgage refinance ][ http://www.slidersweb.com/rv-insurance--camping-world-rv-insurance/ camping world rv insurance ][ http://www.thisgreat.com/spyware-protection--spyware-protection-and-removal/ spyware protection and removal ][ http://www.thisgreat.com/car-insurance-quote--aaa-car-insurance-quote/ aaa car insurance quote ][ http://www.faithdot.com/mortgage-florida--home-mortgage-florida/ home mortgage florida ][ http://www.joyplace.info/dentist--dentist-san-antonio/ dentist san antonio ][ http://www.faithdot.com/distance-learning-mba--9-9-9-9-distance-learning-mba/ 9 9 9 9 distance learning mba ][ http://www.thisgreat.com/online-sports-betting--william-hill-online-sports-betting/ william hill online sports betting ][ http://www.slidersweb.com/mortgage-marketing--free-idea-marketing-mortgage/ free idea marketing mortgage ][ http://www.thisgreat.com/eloan--eloan-promotional-code/ eloan promotional code ][ http://www.complexweb.org/bankruptcy-information--bankruptcy-court-information/ bankruptcy court information ][ http://www.complexweb.org/casinos-online--online-gambling-and-betting-casino/ online gambling and betting casino ][ http://www.joyplace.info/match-maker--com-match-maker-www/ com match maker www ][ http://www.joyplace.info/credit-rating--poor-credit-rating-loan/ poor credit rating loan ][ http://www.faithdot.com/unsecured-personal-loan--guaranteed-unsecured-personal-loan/ guaranteed unsecured personal loan ][ http://www.joyplace.info/retin-a--retin-uk/ retin uk ][ http://www.slidersweb.com/reno-hotel--siena-hotel-spa-reno/ siena hotel spa reno ][ http://www.faithdot.com/wrongful-death--north-carolina-wrongful-death-attorney/ north carolina wrongful death attorney ][ http://www.joyplace.info/norco--norco-door/ norco door ][ http://www.joyplace.info/diabetic-supplies--discount-diabetic-supply/ discount diabetic supply ][ http://www.slidersweb.com/massage-school--massage-schools-virginia/ massage schools virginia ][ http://www.joyplace.info/online-casino-bonus--best-online-casino-bonus/ best online casino bonus ][ http://www.moronclub.org/drug-addiction--alcoholism-and-drug-addiction/ alcoholism and drug addiction ][ http://www.thisgreat.com/on-line-credit-cards--card-credit-number-online/ card credit number online ][ http://www.moronclub.org/video-slot--video-slot-game/ video slot game ][ http://www.slidersweb.com/get-rid-of-spyware--get-popup-rid-spyware/ get popup rid spyware ][ http://www.faithdot.com/about-soma--discount-soma/ discount soma ][ http://www.moronclub.org/dianabol--dianabol-thailand-wholesaler/ dianabol thailand wholesaler ][ http://www.thisgreat.com/lead--internet-lead/ internet lead ][ http://www.thisgreat.com/poker-games-online--affiliate-game-online-poker/ affiliate game online poker ][ http://www.joyplace.info/incense--incense-and-peppermints/ incense and peppermints ][ http://www.joyplace.info/online-graduate-degree--degree-english-graduate-online/ degree english graduate online ][ http://www.joyplace.info/free-spyware--free-spyware-protector-download/ free spyware protector download ][ http://www.complexweb.org/microscope--microscope-lesson-plan/ microscope lesson plan ][ http://www.slidersweb.com/7sultans-casino--7sultans-casino-online/ 7sultans casino online ][ http://www.faithdot.com/futons--futon-boston/ futon boston ][ http://www.joyplace.info/auto-insurance--car-insurance-washington/ car insurance washington ][ http://www.thisgreat.com/current-mortgage-rates--pa-current-mortgage-rate/ pa current mortgage rate ][ http://www.thisgreat.com/meridia-online--meridia-online-pharmacy/ meridia online pharmacy ][ http://www.joyplace.info/liability-insurance--contractor-general-liability-insurance/ contractor general liability insurance ][ http://www.moronclub.org/sprint-pcs-phone--free-sprint-pcs-phone/ free sprint pcs phone ][ http://www.slidersweb.com/personal-injury-attorney--new-york-personal-injury-attorney/ new york personal injury attorney ][ http://www.slidersweb.com/degree--online-physical-education-degree/ online physical education degree ][ http://www.moronclub.org/free-credit-card--free-no-credit-card/ free no credit card ][ http://www.thisgreat.com/california-mortgages--california-mortgage-broker/ california mortgage broker ][ http://www.joyplace.info/house-foreclosure--foreclosure-house-in-jersey-new/ foreclosure house in jersey new ][ http://www.moronclub.org/hydrocodone-purchase--hydrocodone-prescription-purchase-without/ hydrocodone prescription purchase without ][ http://www.joyplace.info/casino-game-online--play-casino-game-for-fun-online/ play casino game for fun online ][ http://www.moronclub.org/truck-rental-moving-ma--ma-moving-rental-truck/ ma moving rental truck ][ http://www.joyplace.info/poker-software--director-poker-software-tournament/ director poker software tournament ][ http://www.faithdot.com/airlines--international-airline/ international airline ][ http://www.moronclub.org/cheap-car-insurance-quote--cheap-motor-car-insurance-quote/ cheap motor car insurance quote ]  http://www.slidersweb.com/ [ http://www.joyplace.info/marketing-strategy--marketing-plan-strategy/ marketing plan strategy ][ http://www.joyplace.info/romantic-getaways--romantic-cabin-getaway/ romantic cabin getaway ][ http://www.moronclub.org/commodity-trading--commodity-spread-trading/ commodity spread trading ][ http://www.thisgreat.com/loans-for-bad-credit--bad-credit-home-loan/ bad credit home loan ][ http://www.faithdot.com/egg--goose-egg/ goose egg ][ http://www.slidersweb.com/debt-consolidation-services--best-free-debt-consolidation-service/ best free debt consolidation service ][ http://www.moronclub.org/buy-ultram--buy-cheap-ultram/ buy cheap ultram ][ http://www.faithdot.com/roofing--roofing-tile/ roofing tile ][ http://www.joyplace.info/coffee-maker--farberware-coffee-maker/ farberware coffee maker ][ http://www.faithdot.com/irritable-bowel-syndrome--irritable-bowel-syndrome-with-diarrhea/ irritable bowel syndrome with diarrhea ][ http://www.slidersweb.com/advantage--advantage-health/ advantage health ][ http://www.joyplace.info/moving-trucks--moving-rental-trailer-truck/ moving rental trailer truck ][ http://www.slidersweb.com/crohns--crohns-disease-probiotics/ crohns disease probiotics ][ http://www.thisgreat.com/online-pharmacy--online-internet-pharmacy/ online internet pharmacy ][ http://www.thisgreat.com/best-casino--best-casino-on-net/ best casino on net ][ http://www.thisgreat.com/make-money--make-money-fast-and-easy/ make money fast and easy ][ http://www.thisgreat.com/projector-lamp--projector-lamp-center/ projector lamp center ][ http://www.thisgreat.com/airline-travel--northwest-airline-travel/ northwest airline travel ][ http://www.moronclub.org/toner-cartridge--laser-toner-cartridge-recycling/ laser toner cartridge recycling ][ http://www.slidersweb.com/download-soccer-games--download-free-soccer-game/ download free soccer game ][ http://www.joyplace.info/yu-gi-oh!--yu-gi-oh-tea/ yu gi oh tea ][ http://www.joyplace.info/extra-incomes--extra-income-teacher/ extra income teacher ][ http://www.moronclub.org/stansted-parking--cheap-parking-stansted/ cheap parking stansted ][ http://www.moronclub.org/family-health-insurance--family-health-insurance-plan/ family health insurance plan ][ http://www.joyplace.info/pet-supplies--discount-pet-store-supply/ discount pet store supply ][ http://www.joyplace.info/adjustable-bed--adjustable-bed-frame/ adjustable bed frame ][ http://www.joyplace.info/home-business-idea--best-home-based-business-idea/ best home based business idea ][ http://www.faithdot.com/corporate-credit-card--card-corporate-credit-services/ card corporate credit services ][ http://www.faithdot.com/free-online-credit-report--credit-free-history-online-report/ credit free history online report ][ http://www.joyplace.info/free-credit-report--free-credit-report-comm/ free credit report comm ][ http://www.faithdot.com/louis-vuitton-replicas--aaa-grade-louis-vuitton-replica/ aaa grade louis vuitton replica ][ http://www.complexweb.org/targeted-traffic--buy-targeted-traffic/ buy targeted traffic ][ http://www.slidersweb.com/phentermine-online--discount-online-phentermine-pill/ discount online phentermine pill ][ http://www.moronclub.org/matchmaking--latin-matchmaking/ latin matchmaking ][ http://www.faithdot.com/computers-desk--white-computer-desk/ white computer desk ][ http://www.thisgreat.com/storm-windows--storm-window-frame/ storm window frame ][ http://www.thisgreat.com/human-growth-hormones--faq-growth-hormone-human/ faq growth hormone human ][ http://www.slidersweb.com/mail-server--secondary-mail-server/ secondary mail server ][ http://www.thisgreat.com/computer-shopping--computer-puerto-rico-shopping/ computer puerto rico shopping ][ http://www.complexweb.org/lufthansa--flyer-frequent-lufthansa/ flyer frequent lufthansa ][ http://www.joyplace.info/gift-bag--bag-gift-jewelry/ bag gift jewelry ][ http://www.complexweb.org/morgage-rates--french-commercial-mortgage-interest-rate/ french commercial mortgage interest rate ][ http://www.complexweb.org/make-money-online--great-make-money-online-ways/ great make money online ways ][ http://www.joyplace.info/business-gifts--christmas-gift-idea-business-gift/ christmas gift idea business gift ][ http://www.thisgreat.com/web-page-design--web-page-design-computer/ web page design computer ][ http://www.slidersweb.com/isps--broadband-isps-uk/ broadband isps uk ][ http://www.complexweb.org/law-schools--southwestern-law-school/ southwestern law school ][ http://www.thisgreat.com/office-supplies--office-product-supply/ office product supply ][ http://www.complexweb.org/home-casino--casino-home-hotel-page-riviera/ casino home hotel page riviera ][ http://www.faithdot.com/vicodin--breast-feeding-vicodin/ breast feeding vicodin ][ http://www.moronclub.org/debt-relief--debt-relief-plan/ debt relief plan ][ http://www.thisgreat.com/mortgage-refinance-connecticut--connecticut-mortgage-refinance/ connecticut mortgage refinance ][ http://www.moronclub.org/settlements--structured-settlement-broker/ structured settlement broker ][ http://www.faithdot.com/carnival-cruise-line--carnival-cruise-galveston/ carnival cruise galveston ][ http://www.faithdot.com/hawaii-vacation--vacation-rental-in-hawaii/ vacation rental in hawaii ][ http://www.complexweb.org/online-cash-loans--advance-cash-fast-in-loan-online-payday-quick-until/ advance cash fast in loan online payday quick until ][ http://www.thisgreat.com/right-to-buy-mortgage--council-right-to-buy-mortgage/ council right to buy mortgage ][ http://www.moronclub.org/virtual-office--redmond-virtual-office-space/ redmond virtual office space ][ http://www.faithdot.com/codeine-online--online-pharmacy-codeine/ online pharmacy codeine ][ http://www.complexweb.org/business-degree--business-degree-requirement/ business degree requirement ]
+
Updated August 2017
 +
 
 +
== Current State ==
 +
 
 +
Inkscape supports a single <tt>&lt;style&gt;</tt> element in the document. If there is more than one style element, Inkscape will pick one to use.
 +
 
 +
@import is supported as of 0.93 (read-only). other @-rules are not supported.
 +
 
 +
There is a simple style editor (Object -> Style dialog). Selectors can be added/deleted.
 +
 
 +
 
 +
== Work Needed (incomplete list) ==
 +
 
 +
* As of 0.93, libcroco supports multiple style sheets in a document. Inkscape needs to change how style sheet are handled to make use of this. Currently style sheet handling is tied to style elements. This needs to be changed so that style sheet handling is tied to the document so that all style sheets are evaluated at the same time.
 +
 
 +
* Convert the simple user agent stylesheet given at http://www.w3.org/TR/SVG11/styling.html#UAStyleSheet to <tt>libcroco</tt> structures (perhaps by passing strings to <tt>libcroco</tt> parsing functions) and store in <tt>desktop-&gt;style_cascade</tt>.
 +
 
 +
* Check that all "shorthand properties" are supported.
 +
 
 +
* Improve the usability of the Style dialog so that properties can be moved back and forth between style attributes and style elements.
 +
 
 +
== THE REST IS OUT-OF-DATE ==
 +
 
 +
==== Updating for changes to <tt>&lt;style&gt;</tt> content ====
 +
 
 +
'''State so far:''' Every keystroke in the XML Editor in the content of the <tt>&lt;style&gt;</tt> element gets <tt>sp_style_elem_read_content</tt> to be re-read.
 +
One can force an object to get the revised stylesheet info…e.g., by &lt;Up&gt; &lt;Down&gt; (forcing an update) then deleting its <tt>style</tt> attribute.
 +
 
 +
So, one change is that we shouldn't be so keen to put things in the <tt>style</tt> attribute.
 +
Currently, the stylesheet info gets merged into <tt>SPStyle</tt>, and set the <tt>style</tt> attribute to contain everything in <tt>SPStyle</tt> (and clear any styling attributes like <tt>fill=...</tt>).
 +
One existing problem with this behaviour (other than how it interacts with stylesheets) is that we discard any <tt>style</tt> properties we don't know about. 
 +
 
 +
Instead we should remember the content of the style attribute and only replace the properties we've changed, adding only as necessary.
 +
 
 +
One implementation would be to keep <tt>SPStyle</tt> but indicate which properties came from where, and hence which ones need to be written to the style attribute and which ones don't.
 +
Apart from not writing if src==stylesheet, we can also avoid writing if src==attribute: i.e. don't gratuitously break SVG Tiny conformance of a document (or more generally break compatibility with implementations that don't honour CSS <tt>style</tt> attributes).
 +
Not to say that we can't choose to use the <tt>style</tt> attribute for properties that the user changes during an inkscape session, but currently we change from attributes to <tt>style=</tt>... even for shapes that the user just changes the position of without changing any styling stuff.
 +
 
 +
=== Why can't we use <tt>libcroco-0.6</tt>'s existing <tt>libxml</tt> interface to <tt>cr-sel-eng.c</tt> ? ===
 +
 
 +
Some CSS selectors (http://www.w3.org/TR/REC-CSS2/selector.html) can express "is preceded by X" or "is a descendent of X" (where X can itself be similarly constrained recursively), so we'd pretty much need to maintain the entire document in <tt>libxml</tt> form if we want to use <tt>libcroco</tt> for CSS selectors.
 +
 
 +
Suppose we want to find the style of node N. We pass <tt>libcroco</tt> a stylesheet and ask it what rules apply to N.
 +
If the stylesheet says "nodes that are preceded by a node that is preceded by a node that's a descendent of (... etc. ...) have red stroking" then <tt>libcroco</tt> needs to be able to navigate through the tree.
 +
So we can't pass <tt>libcroco</tt> just a <tt>libxml</tt> version of node N, we need to fill in its parent and sibling links, providing a <tt>libxml</tt> node for a significant proportion of all nodes in the tree.
 +
(Short of using hardware watchpoints to check access to the sibling/parent links and supply them lazily.)
 +
 
 +
=== Implementing External Stylesheets… ===
 +
 
 +
External stylesheets are arguably easier to implement than internal ones: the reference to the stylesheet comes right at the beginning of the xml file before even the top-level <tt>&lt;svg&gt;</tt> element, so we already know all the styling stuff for <tt>&lt;svg&gt;</tt> as soon as we reach it. Editing may also be a bit easier, in that external stylesheets usually exist for sharing styles across many documents, so there's less expectation of being able to edit the stylesheet itself.
 +
 
 +
The work of actually parsing the stylesheet once it's in memory is already done: see <tt>src/sp-style-elem.cpp:sp_style_elem_read_content</tt>.
 +
 
 +
So for read-only support of a single external stylesheet, it may well be just a matter of looking at how we can get XML processing instructions from libxml2 (please add a reference to the relevant documentation or code here once you've looked it up, anyone), and parse the pseudo-xml-attributes (see http://www.w3.org/TR/xml-stylesheet/; note that these aren't real xml attributes that libxml2 handles, so we do the parsing ourselves — or pass the string to a separate libxml2 instance/session/parser).
 +
 
 +
Then get the CSS from the specified URI (presumably using the same gnome vfs stuff that we currently use for accepting URIs from the command line…though we could use libcurl instead: man curl, and see the <tt>--libcurl</tt> option for producing example code).
 +
 
 +
Then proceed as <tt>sp-style-elem.cpp:sp_style_elem_read_content</tt> does (presumably splitting off most of that function into a new function that takes the string as argument).
 +
 
 +
==== Multiple stylesheets ====
 +
 
 +
Initially, we would support only a single stylesheet, as <tt>libcroco</tt> currently doesn't support multiple stylesheets.
 +
 
 +
If you don't want to change libcroco, then it suffices to concatenate all the stylesheets together; the only thing you lose with that approach is that any parsing errors won't have the right line number, but I believe it gives completely correct results in absence of errors in any of the stylesheets.
 +
 
 +
The xml-stylesheet spec says that multiple external stylesheets interact the same way as in HTML; the relevant part of the HTML spec is http://www.w3.org/TR/html4/present/styles.html#h-14.3.
 +
 
 +
[[Category:Developer Discussion]]

Latest revision as of 12:28, 11 August 2017

Updated August 2017

Current State

Inkscape supports a single <style> element in the document. If there is more than one style element, Inkscape will pick one to use.

@import is supported as of 0.93 (read-only). other @-rules are not supported.

There is a simple style editor (Object -> Style dialog). Selectors can be added/deleted.


Work Needed (incomplete list)

  • As of 0.93, libcroco supports multiple style sheets in a document. Inkscape needs to change how style sheet are handled to make use of this. Currently style sheet handling is tied to style elements. This needs to be changed so that style sheet handling is tied to the document so that all style sheets are evaluated at the same time.
  • Check that all "shorthand properties" are supported.
  • Improve the usability of the Style dialog so that properties can be moved back and forth between style attributes and style elements.

THE REST IS OUT-OF-DATE

Updating for changes to <style> content

State so far: Every keystroke in the XML Editor in the content of the <style> element gets sp_style_elem_read_content to be re-read. One can force an object to get the revised stylesheet info…e.g., by <Up> <Down> (forcing an update) then deleting its style attribute.

So, one change is that we shouldn't be so keen to put things in the style attribute. Currently, the stylesheet info gets merged into SPStyle, and set the style attribute to contain everything in SPStyle (and clear any styling attributes like fill=...). One existing problem with this behaviour (other than how it interacts with stylesheets) is that we discard any style properties we don't know about.

Instead we should remember the content of the style attribute and only replace the properties we've changed, adding only as necessary.

One implementation would be to keep SPStyle but indicate which properties came from where, and hence which ones need to be written to the style attribute and which ones don't. Apart from not writing if src==stylesheet, we can also avoid writing if src==attribute: i.e. don't gratuitously break SVG Tiny conformance of a document (or more generally break compatibility with implementations that don't honour CSS style attributes). Not to say that we can't choose to use the style attribute for properties that the user changes during an inkscape session, but currently we change from attributes to style=... even for shapes that the user just changes the position of without changing any styling stuff.

Why can't we use libcroco-0.6's existing libxml interface to cr-sel-eng.c ?

Some CSS selectors (http://www.w3.org/TR/REC-CSS2/selector.html) can express "is preceded by X" or "is a descendent of X" (where X can itself be similarly constrained recursively), so we'd pretty much need to maintain the entire document in libxml form if we want to use libcroco for CSS selectors.

Suppose we want to find the style of node N. We pass libcroco a stylesheet and ask it what rules apply to N. If the stylesheet says "nodes that are preceded by a node that is preceded by a node that's a descendent of (... etc. ...) have red stroking" then libcroco needs to be able to navigate through the tree. So we can't pass libcroco just a libxml version of node N, we need to fill in its parent and sibling links, providing a libxml node for a significant proportion of all nodes in the tree. (Short of using hardware watchpoints to check access to the sibling/parent links and supply them lazily.)

Implementing External Stylesheets…

External stylesheets are arguably easier to implement than internal ones: the reference to the stylesheet comes right at the beginning of the xml file before even the top-level <svg> element, so we already know all the styling stuff for <svg> as soon as we reach it. Editing may also be a bit easier, in that external stylesheets usually exist for sharing styles across many documents, so there's less expectation of being able to edit the stylesheet itself.

The work of actually parsing the stylesheet once it's in memory is already done: see src/sp-style-elem.cpp:sp_style_elem_read_content.

So for read-only support of a single external stylesheet, it may well be just a matter of looking at how we can get XML processing instructions from libxml2 (please add a reference to the relevant documentation or code here once you've looked it up, anyone), and parse the pseudo-xml-attributes (see http://www.w3.org/TR/xml-stylesheet/; note that these aren't real xml attributes that libxml2 handles, so we do the parsing ourselves — or pass the string to a separate libxml2 instance/session/parser).

Then get the CSS from the specified URI (presumably using the same gnome vfs stuff that we currently use for accepting URIs from the command line…though we could use libcurl instead: man curl, and see the --libcurl option for producing example code).

Then proceed as sp-style-elem.cpp:sp_style_elem_read_content does (presumably splitting off most of that function into a new function that takes the string as argument).

Multiple stylesheets

Initially, we would support only a single stylesheet, as libcroco currently doesn't support multiple stylesheets.

If you don't want to change libcroco, then it suffices to concatenate all the stylesheets together; the only thing you lose with that approach is that any parsing errors won't have the right line number, but I believe it gives completely correct results in absence of errors in any of the stylesheets.

The xml-stylesheet spec says that multiple external stylesheets interact the same way as in HTML; the relevant part of the HTML spec is http://www.w3.org/TR/html4/present/styles.html#h-14.3.