About netpbm (original) (raw)

Netpbm är en verktygssats för manipulering av grafiska bilder, inklusive konvertering av bilder mellan olika format. Det finns över 300 separata verktyg i paketet inklusive konverterare för cirka 100 grafikformat. Exempel på den typ av bildmanipulation som vi pratar om är: Krympa en bild med 10%; Skär av den övre halvan av en bild; Att göra en spegelbild; Skapa en sekvens av bilder som bleknar från en bild till en annan.

För mer information, se bruksanvisningen (english).

Paketet är avsett att vara portabelt till många plattformar. Det har åtminstone på en gång testats under olika Unix-baserade system, Windows, Mac OS X, VMS och Amiga OS. Underhållaren använder och bygger det på ett Linux-system.

Målet med Netpbm är att vara en enda källa för alla primitiva grafikverktyg, särskilt omvandlare, som man kan behöva. Så om du känner till någon fritt omfördelningsbar programvara i den här vyn som inte finns i paketet ännu, bör du föra den uppmärksam på Netpbm-underhållaren så att den kan inkluderas i nästa utgåva.

Netpbm innehåller inte interaktiva verktyg och har inte ett grafiskt gränssnitt. Programmen är användbara åberopade från ett typiskt skal-kommando, men de flesta är också inriktade på att användas internt av ett program.
Få Netpbm

Se Hämta Netpbm.

Byggande och installation

Instruktioner för att bygga och installera Netpbm finns i Netpbm-källträdet i fil doc / INSTALL.

Stöd

Det finns ingen e-postlista eller spårningssystem för felrapporter och begäran om hjälp. Skicka bara ett e-postmeddelande till underhållaren Bryan Henderson på bryanh@giraffe-data.com. Bryan svarar ganska snabbt och pålitligt.

Kontrollera först ändringshistoriken för din släppserie för att se om felet redan har rättats. Alternativet –version i de flesta Netpbm-program berättar vilken version du använder.

Det finns inget felspårningssystem eftersom det inte finns tillräckligt med bugrapporter för att göra det värt. Underhållaren svarar omedelbart på varje e-postadressrapport.

Observera att det generellt inte finns något sådant som ett fel som har rapporterats men att det inte finns en fix som anges i ändringshistoriken. Det beror på att när ett fel rapporteras finns det en ny utgåva inom några dagar för att fixa det (eller en dokumentändring som gör att det inte är ett fel).

Utveckling

Netpbm underhålls och distribueras via ett Sourceforge-projekt.

Förutsättningar

Om du har problem med att få, bygga eller installera förutsättningarna vill Netpbm-underhållaren veta det. Eftersom han använder dem själv kan han hjälpa dig. Och om det finns ett problem med ett förutsatt paket som en egen underhållare inte kan fixa, kan det vara möjligt att skicka en fix med Netpbm.

För att bygga och installera Netpbm behöver du GNU Make och en Perl-tolk. Du kan få GNU Make från GNU-projektet och Perl från CPAN. Det är möjligt att ta sig runt Perl-kravet genom att köra några av stegen på en annan maskin som har Perl och göra andra manuellt. Det finns ingen praktisk ersättning för GNU Make.

Netpbm-paketet som helhet använder över ett halvt dussin externa bibliotek, men du behöver inte nödvändigtvis installera dem alla för att bygga Netpbm. Varje bibliotek används av några få Netpbm-program, och om du inte har biblioteket kommer Netpbm build automatiskt att hoppa över att bygga dessa delar. Se förutsatt lista.

pstopnm (Postscript to PNM-bildkonverteraren) kräver Ghostscript (installerat med namnet gs i din kommandosökväg). Och det kräver särskilt att Ghostscript byggs med relevanta PNM-enhetsdrivrutiner.

Alla C-kompilatorer som implementerar C89-standarden (vilket förmodligen betyder vilken C-kompilator du kommer att stöta på) bör fungera. Gcc 2,96 är dock trasig på ett sätt som gör att den inte kan kompilera Netpbm. Alla andra versioner av GCC eller Clang bör fungera.

Netpbm kräver ett C runtime-bibliotek (libc) som implementerar Single Unix Specification, version 2 (ca. 1997). Vissa kompilatorer eller C-runtime-bibliotek, inklusive MinGW, implementerar felaktiga testmakroer och antingen bibliotekshuvudfilerna eller Netpbm måste ändras något för att koden ska kunna kompileras. GNU C-biblioteket i version 2 eller högre bör fungera, vilket inkluderar all Linux-distribution du troligtvis kommer att stöta på.

Netpbm kräver cirka 6 MiB hårddiskutrymme, inklusive dokumentation. Dokumentationen är 2 MiB, men du behöver inte nödvändigtvis installera den; du kan bara komma åt den offentliga kopian.

Juridisk användbarhet

Du kan vanligtvis hitta ett erbjudande om en upphovsrättslicens i källkodfilerna. GPL-, BSD-, MIT- och BSD-licenser är bland de som erbjuds. Steve McIntyre gjorde en undersökning av källkoden 2001 för att bestämma vad som kunde ingå i Debian och sammanfattade vad han hittade i filen copyright_summary i källträdet.

Naturligtvis, med Netpbm som med mest öppen källkodsprogramvara, kan du naturligtvis inte vara säker på vem som skrev koden eller om licensen erbjuder du faktiskt kommer från de personer som innehar upphovsrätten. Någon vid någon tidpunkt kan ha kopierat koden utan tillåtelse och bidragit med den till Netpbm, vilket innebär att om du kopierar den vidare kan du vara skyldig till copyrightägarens royalties. Men risken för detta bör vara liten eftersom inga bidrag till Netpbm är tillräckligt värdefulla för att en sådan upphovsrättsägare skulle bry sig om att upprätthålla upphovsrätten.

Popularitet

Netpbms popularitet är mestadels historisk. Det var en tid då det var det främsta grafikbearbetningspaketet i världen, men det var en tid då datorer främst användes av ingenjörer och forskare – människor som var bekväma att skriva skalkommandon och skriva program. Det var en tid då grafiska användargränssnitt var svaga och sällsynta. Idag är några av Netpbms 300+ program ganska populära, men de flesta används främst av mycket gamla program och till och med äldre programmerare. En person är mer benägna att beskära en bild idag med Adobe Photoshop eller Gimp än Netpbms pnmcrop eller konvertera från GIF till PNG med ImageMagick.

En annan anledning till att minska populariteten är att Netpbms huvudfunktion när den var ny var dess förmåga att konvertera mellan grafikformat. Alla utom åtta av de 100 format som Netpbm känner till ses bara i museer idag.

Inget av detta betyder att Netpbm är föråldrad. Netpbm har ingen likhet bland ingenjörerna som uppskattar modulär design, kodanvändning och byggande av byggstenar. Dessa människor fortsätter att använda det i stort antal, och det finns nya utgåvor, vanligtvis innehåller nya funktioner, var tredje månad.

I juni 2012 gjorde Netpbm-utvecklaren och användaren Akira F Urushibata en studie av det Linux-baserade operativsystemet Fedora och fann att 114 Netpbm-program till viss del användes i minst ett Fedora-paket. Detta inkluderade omvandlare för 34 grafikformat.

De tio mest populära (efter antal paket som använder den) Netpbm-program i Fedora var, i ordning från de mest populära:

  1. pnmtopng / pngtopnm (Konverterar till / från PNG)
  2. pnmtops (Konverterar till Postscript)
  3. ppmtogif / giftopnm (Konverterar till / från GIF)
  4. pnmquant (kvantiserar färger)
  5. pamscale (Skalar bilder – expanderar och krymper bilder)
  6. tifftopnm / pnmtotiff (Konverterar till / från TIFF)
  7. jpegtopnm (Konverterar till JFIF)
  8. ppmtopgm (Konverterar färg till gråskala)
  9. pamcut (beskär bilder)
  10. bmptopnm / ppmtobmp (Konverterar till / från BMP).

De tio mest populära omräknarna som inte räknade var:

Det är värt att notera att det faktiska paketberoendet visar mycket mindre användning av Netpbm än vad dessa siffror indikerar. Denna studie gjordes genom att söka efter namn på Netpbm-program i paketens filer.

Nedladdning är inte möjligt eftersom Netpbm distribuerar huvudsakligen genom Subversion-kassan.

Historia

Netpbms historia sträcker sig tillbaka till 1988. Kortfattat: Netpbm ersätter det breda utbredda Pbmplus-paketet (senast släppt den 10 december 1991). Mycket många förbättringar och tillägg har gjorts. Efter den senaste utgåvan av Pbmplus började många ytterligare filter att cirkulera på nätet, vilket var en ganska ny situation då. Syftet med Netpbm var att samla in dessa och göra dem till ett paket, därav namnet ”Netpbm.” Detta arbete har utförts av programmerare över hela världen.

För detaljerad kodändringshistorik, se change.html. Härifrån kan du se om ett visst fel har rättats sedan utgivningen där du ser det, och vilka nya funktioner som finns i nyare utgåvor än vad du har.