Golf kode: Cetak gambar kode sumber.
Persyaratan
- Harus menampilkan gambar kode sumber itu sendiri, bukan versi yang disimpan di tempat lain dan diambil pada saat dijalankan.
- Kode harus cukup dapat dibaca untuk disalin dengan tangan dan mereproduksi hasilnya.
Format gambar apa pun berlaku.
Bonus
- -10% dari skor Anda jika Anda mengizinkan lebih dari satu format output.
- -15% jika kode Anda juga quine 'benar'. yaitu tidak membaca kode sumbernya tetapi kode sumber disematkan (lihat di sini untuk contoh)
- -30% jika kode Anda adalah quine ketat - yaitu gambar kode tertanam dalam program (solusi Piet, saya melihat Anda.).
code-golf
quine
graphical-output
image-processing
Pureferret
sumber
sumber
Jawaban:
kulit
Dengan "Cetak gambar kode sumber", saya berasumsi bahwa sebenarnya mencetak gambar di atas kertas dapat diterima.
sumber
Piet, 24399.76
Ini bukan buatan saya.
sumber
PHP - 487 × 0,9 × 0,85 = 372.555 (2000 × 99px)
Jika peringatan baik-baik saja: PHP - 479 × 0,9 × 0,85 = 366,435
Anda menyediakan fungsi output untuk digunakan sebagai argumen baris perintah pertama:
Solusi dengan peringatan:
sumber
Spasi, 125
Keluarkan file gambar dalam format pbm .
Jika Anda menguji kode ini, harap salin dengan mengklik "Edit", dan menyalin semua di antara
<pre>
tag.Keluaran:
sumber
Mathematica,
3731 karakterTerinspirasi oleh jawaban di Mathematica.stackexchange.com .
sumber
Export["/tmp/out.png",%]
setelah menjalankan perintah ini)#n
berartin
argumen fungsi murni (dibuat pada saat&
itu). Seluruh ekspresi diperluas keRasterize[Defer[#0[Defer,Rasterize]]]
, di mana#0
panggilan rekursif dari fungsi murni asli. Di satu sisi, ini bukan quine yang ketat, tetapi tidak perlu antarmuka untuk bekerja, dan IMO solusi yang bagus.AppleScript,
6837Baiklah, jika Anda dapat memanggil ImageMagick di zsh maka ini juga valid. Saya masih meretas sesuatu yang lebih elegan dan of-the-quine-spirit untuk kepuasan saya sendiri, tetapi untuk golfiness murni, di sini kita:
Versi baru
Versi lama
Saya membayangkan ini masih akan dipukuli, tetapi AppleScript lama yang verbose melakukan tiruan dari kejelasan yang mengagumkan untuk yang satu ini.
sumber
Mathematica, 83
sumber
math
atauMathKernel
), bahkan dengan<<JavaGraphics`
impor.Sh, X & ImageMagick 18.9:
Ini harus bekerja di shell yang memiliki ImageMagick.
Untuk mencetak hanya kode yang didahului
clear &&
ini keluar pada 26.1Output sampel:
sumber
HTML5 / Javascript: 615
Demo: http://jsfiddle.net/E2738/2/
Orang dapat mengklik kanan pada gambar dan menyimpannya sebagai PNG
sumber
<//script>
+wrapText+"<//script>";
ke+wrapText+"<\/script>";
Java, 570 - 10% - 15% = 427.5
( "filepath" termasuk), 554-10% - 15% = 415,5 ( "filepath" tidak termasuk)
Terima kasih kepada Andreas untuk menghapus
BufferedImage
dijava.awt.image.BufferedImage
Keluaran:
Untuk melihatnya dengan benar, lihat tautan ini: http://i.stack.imgur.com/RRSDw.png
Ini berfungsi seperti quine biasa, kecuali itu output ke gambar. Format saat ini
png
, tetapi format dapat dengan mudah diubah dengan mengganti semua instancepng
dalam program dengan format apa pun yang Anda inginkan.Tidak seperti beberapa jawaban di sini, ini adalah quine sejati; tidak ada pembacaan file program.
sumber
Javascript + JQuery
153148Reguler
Golf
sumber
$
? apakah Anda menggunakan jQuery juga ??stdio.h
xD. Menulis program tanpa jQuery itu mudah. Ganti saja$('<canvas/>')[0]
dengandocument.createElement('canvas')
dan$('body').append
dengandocument.write
. jQuery menyelamatkan saya byte.zsh, 57 × 0,9 = 51,3
Berikan nama file keluaran sebagai argumen.
Menghasilkan:
sumber
C99 (menggunakan SDL & SDL_ttf),
414354346 - 15% = 294.1Ini sangat jelek tanpa jeda baris lagi, tetapi sayangnya mereka harus absen. Fungsi rendering teks sama sekali tidak mengontrol karakter, jadi setiap jeda baris dalam kode harus diterjemahkan secara manual dalam output.
Berikut kode yang sama tetapi dengan beberapa jeda baris tambahan untuk keterbacaan:
Sayangnya, ini juga tidak menambahkan jeda baris ke output grafis:
Outputnya masih terbaca, meskipun dengan output 9-point dan warna font merah, agak sedikit menyolok. Anda dapat memperbaikinya dengan mengorbankan karakter dengan mengganti
9
dengan12
. (Perhatikan bahwa dimensi gambar yang dihasilkan hardcoded ke 2048x80. Untuk mengakomodasi perbedaan dalam berbagai font, sedikit kelebihan telah ditambahkan ke margin kanan dan depan, cukup sehingga font ukuran-12 harus tetap pas dengan nyaman Jika Anda ingin meningkatkannya lebih jauh, dimensi mungkin perlu diubah juga.)Perintah untuk membangun program adalah:
Program ini mengasumsikan bahwa ada file font yang dipanggil
q.ttf
di direktori saat ini ketika dijalankan. Saya menangani hal ini sebelumnya dengan menjalankan perintah berikut (yang seharusnya bekerja pada kebanyakan Linux modern):(Sebaliknya, silakan mengimpor font TrueType favorit Anda sendiri.)
Setelah menjalankan program, output gambar akan dibuat di direktori saat ini, dalam file bernama
q.bmp
. Sayangnya file bitmap Windows adalah satu-satunya format output yang disediakan oleh program ini. Menambahkan lebih banyak format output akan membutuhkan penautan di lebih banyak perpustakaan.Perhatikan bahwa program ini memanfaatkan sintaksis C99 untuk memperkenalkan nilai-nilai literal yang tidak sederhana, sehingga secara signifikan mengurangi jumlah variabel yang perlu didefinisikan. Ini adalah sesuatu yang harus dimanfaatkan oleh lebih banyak pegolf C.
sumber
C # - 498 - 15% = 423.3
Ini mungkin bisa lebih banyak golf. Saya belum pernah melakukan quine atau gambar seperti ini di C # sebelumnya:
Keluaran:
Menambahkan dukungan format yang berbeda akan mudah. Tidak yakin apakah itu sepadan.
sumber
Ruby, 104 karakter
Contoh output, per permintaan: i.imgur.com/jMC594C.png
sumber
Python:
255238 -10% -15% =195.075182.07Pemakaian:
Ini adalah quine sejati yang menarik output ke file yang ditentukan pada commandline. Format file diatur hanya dengan mengubah ekstensi nama file (mis.
quine.jpg
Untuk JPEG danquine.png
untuk PNG).Contoh output (gambar 2000x20):
sumber
2e3
bukan2000
.2e3
adalah afloat
, danImage.new
menuntutint
s.