C 언어의 카이로 그래 픽 라 이브 러 리 를 이용 하여 태극 도 인 스 턴 스 튜 토리 얼 을 그립 니 다.
아마도 많은 사람들 이 C 언어 로 그림 을 그 리 는 것 에 대해 Turbo C 의 graphics.h 년대 에 머 물 렀 을 것 이다.교육 이 노화 되 는 원인 도 있 을 것 이다.예전 의 경전 은 이미 옛일 이 되 었 기 때문에 여러 가지 방법 으로 호 환 되 는 도형 고 를 찾 는 것 보다 찬란 한 내일 을 안 는 것 이 낫다.Cario(http://cairographics.org/)매우 뛰어난 2D 그래 픽 라 이브 러 리 로 유명한 GTK+3.0 은 Cario 를 그래 픽 엔진 으로 사용 하여 강력 함 과 흡인력 을 알 수 있다.
Cario 는 X Window,Quartz,Win 32,image.buffers,PostScript,PDF 와 SVG 파일 등 다양한 출력 장 치 를 지원 하 며 오픈 소스 와 크로스 플랫폼 을 지원 합 니 다.아마도 누군가가 이렇게 강 한 물건 을 사용 하 는 것 이 매우 까다 로 울 것 이 라 고 생각 할 것 이다.사실은 그렇지 않 으 면 API 함수 가 의외로 간단 하고 사용 하기 쉽다.이 글 은 여기 서 태극 도 를 그 리 는 예 를 보 여 주 며 참고 하도록 한다.
인 스 턴 스 코드 는 다음 과 같 습 니 다.
#include <cairo.h>
#define SIZE (640) /* */
#define CX (SIZE / 2) /* */
#define CY (SIZE / 2) /* */
#define R (SIZE / 2) /* */
/* */
#define ANGLE(ang) (ang * 3.1415926 / 180.0)
int main(int argc, char *argv[])
{
/* 32 RGBA Cairo , Memory */
cairo_surface_t* surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, SIZE + 1, SIZE + 1);
cairo_t* cr = cairo_create(surface);
/* */
cairo_set_line_width(cr, 2.0);
cairo_set_source_rgba(cr, 0, 0, 0, 1);
cairo_arc(cr, CX, CY, R, ANGLE(0), ANGLE(360));
cairo_stroke(cr);
/* */
cairo_set_source_rgba(cr, 0, 0, 0, 1);
cairo_arc(cr, CX, CY, R, ANGLE(90), ANGLE(270));
cairo_fill(cr);
cairo_set_source_rgba(cr, 1, 1, 1, 1);
cairo_arc(cr, CX, CY, R, ANGLE(-90), ANGLE(90));
cairo_fill(cr);
/* */
cairo_set_source_rgba(cr, 0, 0, 0, 1);
cairo_arc(cr, CX, CY - R / 2, R / 2, ANGLE(-90), ANGLE(90));
cairo_fill(cr);
cairo_set_source_rgba(cr, 1, 1, 1, 1);
cairo_arc(cr, CX, CY + R / 2, R / 2, ANGLE(90), ANGLE(270));
cairo_fill(cr);
/* */
cairo_set_source_rgba(cr, 1, 1, 1, 1);
cairo_arc(cr, CX, CY - R / 2, R / 10, ANGLE(0), ANGLE(360));
cairo_fill(cr);
cairo_set_source_rgba(cr, 0, 0, 0, 1);
cairo_arc(cr, CX, CY + R / 2, R / 10, ANGLE(0), ANGLE(360));
cairo_fill(cr);
/* Memory */
cairo_surface_write_to_png(surface, "taichi.png");
/* Cairo */
cairo_destroy(cr);
cairo_surface_destroy (surface);
return 0;
}
코드 는 매우 간단 합 니 다.이 를 통 해 벽돌 을 던 져 옥 을 끌 어 올 리 고 더 많은 사람들 이 카 리 오 그래 픽 라 이브 러 리 를 좋아 하 기 를 바 랍 니 다.GCC 를 컴 파일 하면 다음 명령 을 참고 할 수 있 습 니 다.
gcc -o taichi $(pkg-config --cflags --libs cairo) taichi.c
운행 후의 효 과 는 이 렇 습 니 다.여러분 이 한번 해 보 세 요.총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 댓 글 을 남 겨 주 십시오.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
c 언어 간단한 파일 r/w 조작 방법데이터의 입력과 출력은 거의 모든 C 언어 프로그램과 수반된다. 입력이란 원본에서 데이터를 얻는 것이다. 출력은 단말기에 데이터를 쓰는 것으로 이해할 수 있다.이곳의 원본은 키보드, 마우스, 하드디스크, 시디, 스캐...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.